6、git常用命令总结

1、git init

  在指定目录下,使用git init命令将该目录编程Git可以管理的仓库。

  使用git init命令后,在当前目录下,会多一个.git的目录,这个目录时Git用来跟踪管理版本库的,不可修改这个目录下的文件。

2、git add <filename>

  将文件filename添加到仓库。

  需要注意的是:filename文件必须在仓库目录或仓库目录的子目录下。

3、git commit -m “description”

  将git add添加的文件提交到仓库。

  description时本次提交的说明,可以输入任意内容,当然最好是有意义的。

4、git status

  使用git status命令可以随时掌握工作区的状态。

5、git diff <filename>

  使用git diff命令可以查看文件filename被修改的内容

6、git log

  git log命令显示从最近到最远的提交日志。

  后面可以跟参数:--pretty=oneline 将每次提交记录显示在一行

7、git reset --hard HEAD^

  退回到当前版本的上一个版本。

  HEAD表示当前版本,HEAD^表示当前版本的上一个版本,HEAD^^表示当前版本的上上一个版本……

  这里可以使用commit id代替HEAD^。

  commit id可以使用git log命令查到

8、git reflog

  用来记录用户的每一次命令

9、git diff HEAD -- filename

  查看工作区中filename和版本库中最新版本的filename文件的区别。

10、git checkout -- filename

  丢弃工作区中filename的修改。(这里的 -- 很重要)

11、git reset HEAD filename

  将暂存区中filename的修改撤销掉

12、git rm <filename>  

  将filename文件从版本库中删掉。

13.git  remote add origin git@github.com:yourGitHubname/learngit.git

  将自己的本地仓库learngit与GitHub仓库相关联

14、git push -u origin master

  将本地仓库的所有内容推送到GitHub的远程仓库上

  由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。

  以后,就可以使用命令:git push origin master将本地仓库的内容推送到github

15、git clone git@github.com:yourgithubname/gitskills.git 

  将github的远程仓库gitskills克隆到本地仓库

16、git checkout -b dev

  git checkout命令加上-b参数表示创建并切换,相当于下面两条命令:

1 $ git branch dev
2 $ git checkout dev

17、git branch

  查看当前分支,git branch命令会列出所有分支,当前分支前面会标一个*号。

18、git checkout master

  切换会master分支

19、git merge dev

  用于合并指定分支到当前分支。

20、git branch -d dev

  删除分支dev

21、git log --graph --pretty=oneline --abbrev-commit

  查看分支的合并情况

22、git merge --no-ff -m "merge with no-ff" dev

  将分支dev合并到master,但本次合并要创建一个新的commit,因此要加上-m参数,把commit描述写进去

23、git stash

  用于将当前工作的现场“储藏”起来,等以后恢复现场后,继续工作。

24、git stash list

  查看“储藏”现场的状况

25、git stash apply

  恢复git stash保存的现场,恢复后,stash内容并不删除。需要使用git stash drop来删除

  你可以多次stash,恢复的时候,先用git stash list查看,然后恢复指定的stash,用命令:

1 git stash apply stash@{0}

26、git stash pop

  恢复git stash保存现场的同时,删除stash内容

27、git branch -D feature-vulcan

  强行删除分支feature-vulcan

28、git remote

  查看远程库的信息

  可以加-v参数查看更详细的信息

29、git push origin master

  将本地仓库的分支master推送到远程仓库对应的分支上

30、git checkout -b dev origin/dev

  创建远程origin的dev分支到本地

31、git branch --set-upstream dev origin/dev

  指定本地dev分支与远程origin/dev分支的链接

32、git tag <name>

  创建标签

  还可以创建带有说明的标签,用-a指定标签名,-m指定说明文字

  git tag -a v0.1 -m "version 0.1 released" 3628164

33、git tag

  查看所有标签

34、git log --pretty=oneline --abbrev-commit

  查看历史提交的commit id

35、git tag v0.9 6224937

  为commit id 为6224937的这次commit打标签

36、git show <tagname>

  查看标签信息

37、git tag -d v0.1

  删除标签

38、git push origin <tagname>

  推送某个标签到远程

  或可以一次推送全部尚未推送到远程的本地标签

  git push origin --tags

39、git tag -d v0.9

  git push origin :refs/tags/v0.9

     如果标签已经推送到远程,要删除远程标签就麻烦一点,先从本地删除,然后再从远程删除。

原文地址:https://www.cnblogs.com/Long-w/p/8660513.html