先来记一个我觉得学习Git不错的网站 寥雪峰的官方网站
一直对Git有了解,但是不够系统,所以有了以下是Git 的学习笔记
Git 和 SVN 比较
总体而言SVN是比较易于上手和使用的,Git需要一点学习成本。
-
SVN是集中式,需要在联网的情况下使用,可以实现分支功能但是成本较高。也就是说用这个完意,SVN的是团队中所有人唯一值得相信的版本。如果没有容灾处理的话,一但服务器爆炸了,一切就都凉凉了。当然这种情况如果发生了,请考虑人品:)
-
Git是分布式,支持离线模式, 实现分支功能比较廉价。说人话就是在离线情况下,程序员还是可以操作自己的代码, 可以切换不同分支,没有什么大消耗。
Git的核心概念———工作流
- 工作区
这个就没有什么好说的, 就是我们真正的工作目录。
- 暂存区
这个区保存着我们临时修改的文件,当然这个是需要自己指定将哪些文件放入暂存区的了。
- 仓库区
仓库区分为本地仓库区和远程仓库区。
Git工作流程
MarkDown 怎么写UML图还不会就简单说一下平时要用的操作步骤和命令吧。
创建仓库
创建仓库其实有两种方法,一个是从Github、Gitee等平台上创建一个远程仓库,然后将仓库拉取下来,另一个就是将本地代码用git init初始化后推送到远程。(这种方法,其实有点鸡助的,不推荐。)
所以,创建远程仓库可以在Github、Gitee上创建一个,如果想拥有自己的平台可以搭一下GitLab。
克隆项目 git clone
git clone 这个命令就是将远程仓库的代码下载到本地,并且创建一个和远程分支名一样的分支名与其对应,故这个过程叫克隆。
换分支
仓库分为本地和远程,分支自然也分为本地仓库中。
命令 | 说明 |
---|---|
git branch | 查看本地分支 |
git branch -b | 查看远程分支 |
git checkout {本地分支名} | 切换本地分支 |
git checkout -b {本地分支名} {远程分支名} | 在本地创建分支对应远程分支,并切换到创建的本地分支 |
操作过程 我比较喜欢以下步骤
假设现在已经有一部工作了, 需要切换远程分支做别的工作。
顺序 | 命令 | 说明 |
---|---|---|
1 | git status | 查看文件状态, 可以看到自己修改的文件,如果有不想修改的文件可以撤消,也可以暂存起来 |
2 | git add . | 如查没有不想提交的文件,就可以使用此命令,如果只想提交修改文件中的几个可以使用git add {文件路径} |
3 | git commit -m '日志' | 提交add的文件 |
4 | git push | 推送,如果推送到别的远程分支 也可以指定 |
5 | git pull | 其实这个命令执行了两个命令, 拉取,合并。意思就是同步本地的所有分支以及仓库信息 |
6 | git checkout {本地分支名} | 切换到新工作的分支 |
注意
并不一定就非得按上面的顺序,比如也可以先创建本地分支,然后推送到远程。
彩蛋部分:下篇准备搞下git 的crlf 和lf的问题。
始终是工具,了解用途最重要。