Yutt's Blog

Git常用命令

2018/01/08 Share

git是一个分布式版本控制工具,与CVS、SVN一类的集中式控制工具不同就,分布式版本库不需要服务器端软件,就可以运作版本控制。除此之外,git和其他版本控制工具还有不少的差别,git本身关心文件的整体性是否又改变,但多数的版本控制系统如CVS则再无文件内容的差异;git更像一个文件系统,直接在本机上获取数据而不必链接到主机端,每个开发者都拥有全部开发历史的本地副本。但是如果要与小伙伴们合作开发,还是需要将changes提交到远程的代码仓库(如github码云gitlabcoding)。这些changes可以作为新增的开发分支导入,也可以与本地开发分支合并。

快速入门

  • 初始化本地仓库
1
$ git init
  • 把要提交的changes放到暂存区
1
$ git add .
  • 将暂存区的所有changes提交到分支
1
$ git commit -m "Initial Commit"
  • 添加远程仓库(origin为远程仓库的名字)
1
$ git remote add origin git@github.com:uername/reponsitory.git
  • 将本地库的内容(master分支)推送到远程库(origin),-u选项可以将远程库与本地库的分支关联起来
1
$ git push -u origin master

分支管理

无论一个项目是否是由多人合作开发,分支管理都有其存在的必要性。一般来说,除却仓库初始化时会自动建立主分支(即master分支),以后的每一次开发或迭代都需要基于自己创建的开发分支,当开发分支上的项目确认没有bug之后,才能够和master分支合并。可以想象,如果在开发分支上的代码出现了难以处理的bug的时候,我们依然可以切换回master分支或者其他分支来获取能正常运行的项目。

查看远程库信息

1
$ git remote -v

查看本地分支

1
$ git branch

查看远程分支

1
$ git branch -r

创建本地分支

1
$ git branch [name]

切换分支

1
$ git checkout [name]

创建新分支并立即切换到新分支

1
$ git checkout -b [name]

推送本地分支

1
$ git push [远程仓库名] [本地分支名]:[远程分支名]

获取远程分支

1
git fetch [远程仓库名]/[远程分支名]

更新本地分支

1
git pull [远程仓库名] [远程分支名]:[本地分支名]

合并分支

1
git merge [name]

删除本地分支

1
2
git branch -d [name]
git branch -D [name]

-d选项只能删除已合并的分支

删除远程分支

1
git push [远程仓库名] :[远程分支名]

打标签(打版本号)

显示已有标签

1
git tag

新建标签

1
git tag [标签名]

查看相应标签的版本信息

1
git show [标签名]

删除标签

1
git tag -d [标签名]
CATALOG
  1. 1. 快速入门
  2. 2. 分支管理
    1. 2.1. 查看远程库信息
    2. 2.2. 查看本地分支
    3. 2.3. 查看远程分支
    4. 2.4. 创建本地分支
    5. 2.5. 切换分支
    6. 2.6. 创建新分支并立即切换到新分支
    7. 2.7. 推送本地分支
    8. 2.8. 获取远程分支
    9. 2.9. 更新本地分支
    10. 2.10. 合并分支
    11. 2.11. 删除本地分支
    12. 2.12. 删除远程分支
  3. 3. 打标签(打版本号)
    1. 3.1. 显示已有标签
    2. 3.2. 新建标签
    3. 3.3. 查看相应标签的版本信息
    4. 3.4. 删除标签