首页 > 代码库 > Git命令笔记

Git命令笔记

1、git init 创建版本库

2、git add 添加到暂存区

3、git commit -m "..." 提交到本地仓库

4、git status 查看工作区状态

5、git diff 查看工作区和版本库的差别

6、git log --pretty=oneline 可以查看提交历史,--pretty=oneline表示格式化输出,便于查看

7、git reset --hard HEAD^ 回退到上一个版本,HEAD表示当前版本,^表示上一个版本,HEAD^可以替换成commit_id。只要知道commit_id,
就可以在任意版本之间穿梭

8、git reflog 可以查看命令历史

9、git diff HEAD -- file 查看工作区和版本库里面最新版本的区别,这里是指定了文件,上面没有指定文件

10、git checkout -- file 丢弃工作区的修改

11、git reset HEAD file 可以把暂存区的修改撤销掉,重新放回工作区

12、git rm file 从版本库删除文件,并且要git commit,如果是在工作区中误删,可以用git checkout -- file进行还原

13、ssh-keygen -t rsa -C "youremail@example.com" 创建SSH key,成功后可以在用户主目录找到.ssh目录,里面有id_rsa和id_rsa.pub
两个文件,id_rsa是私钥,id_rsa.pub是公钥,然后要把公钥配置在git远程仓库上。

14、git remote add origin git@server-name:path/repo-name.git 将本地仓库与远程仓库关联

15、git push -u origin master 将本地仓库的内容推送到远程,加上-u参数,会将本地的master分支和远程的master分支关联起来,
这里加-u参数是为了在以后的推送或者拉取时就可以简化命令

16、git clone git@server-name:path/repo-name.git 从远程库克隆

17、git checkout -b dev 创建dev分支,并切换到dev分支,相当于git branch dev,然后git checkout dev

18、git branch dev 创建dev分支

19、git checkout dev 切换到dev分支

20、git branch 查看当前分支

21、git merge dev 合并dev分支到当前分支

22、git merge --no-ff -m "merge with no-ff" dev 使用--no-ff的方式合并,Git就会在merge时生成一个新的commit,
这样,从分支历史上就可以看出分支信息

23、git branch -d dev 删除dev分支

24、git log --graph --pretty=oneline -abbrev-commit 可以查看分支合并图

25、git stash 暂存现场

26、git stash list 查看暂存现场的列表

27、git stash pop 恢复现场,同时把stash的内容删除。PS:git stash apply恢复现场,但stash内容不删除,
使用git stash drop可以删除stash内容

28、git stash apply stash@{0} 恢复指定的stash

29、git branch -D dev 强行删除dev分支(如果要丢弃一个没有合并的分支,用该命令)

30、git remote 查看远程库信息
git remote -v 查看远程库详细信息

31、git push origin master 推送到远程仓库的master分支
git push origin dev 推送到远程仓库的dev分支

32、git pull 把最新的提交从远程仓库抓下来

33、git branch --set-upstream branch-name origin/branch-name 创建本地分支和远程分支的链接

34、git checkout -b dev origin/dev 创建本地分支,并与远程的dev分支建立链接

35、git tag v1.0 创建v1.0标签

36、git tag 查看所有标签

37、git tag v0.9 commit_id 给指定的commit_id打标签

38、git show v0.9 查看v0.9的标签信息

39、git tag -a v0.1 -m "version 0.1 released" commit_id 创建标签名为v0.1,备注说明为version 0.1 released的标签

40、git tag -d v0.1 删除v0.1的标签

41、git push origin v1.0 推送v1.0标签到远程

42、git push origin --tags 一次性推送全部尚未推送到远程的本地标签

43、git push origin :refs/tags/v0.9 从远程删除v0.9的标签,本地标签的删除前面提到过

Git命令笔记