git实用命令整理

小知识:
在git中,用HEAD表示当前版本。
git回退版本速度非常快,得益于HEAD指针,每次回退仅仅改变了指针指向。
git add实际上是把要提交的所有修改放到暂存区(Stage),然后git commit一次性把暂存区的所有修改提交到分支。
git之所以优秀,是因为git跟踪并管理的是修改,而非文件。

命令记录:

配置命令
git config --global user.name “”
git config --global user.email “”

初始命令,把本目录变成git可以管理的仓库
git init

添加文件到仓库
git add <file>
e.g.
git add file1.txt
git add file2.txt file3.txt
添加所有文件到仓库
git add .

提交文件到仓库
git commit -m “”

查看工作区的状态
git status

查看文件修改的内容
git diff <file>
查看工作区和版本库里面最新版本的区别
git diff HEAD -- <file>

查看提交历史
git log 或 git log --pretty=oneline

回退到上一个版本
git reset --hard HEAD^

指定跳到某个版本
git reset --hard <版本号>

查看命令历史
git reflog

丢弃工作区的修改
1)如果还没添加到暂存区,就撤回和版本库一样的状态
2)已经添加到暂存区,还修改了,就撤回到之前添加时的模样
git checkout -- <file>

把暂存区的修改撤销掉(取消暂存unstage),重回工作区
git reset HEAD <file>

从暂存区删除文件
git rm <file>

关联一个远程库
git remote add origin <远程库>

第一次推送
git push -u origin master
以后的推送
git push origin master

查看分支
git branch
创建分支
git branch <name>
切换分支
git checkout <name> 或 git switch <name>(需新版本git)
创建+切换分支
git checkout -b <name> 或 git switch -c <name>(需新版本git)
合并某分支到当前分支
git merge <name>
删除分支
git branch -d <name>

保护现场
git stash
查看现场列表
git stash list
回到现场,并删除现场
git stash pop
在master分支上修复的bug,想合并到dev
git cherry-pick <commit>

本地创建与远程分支对应的分支
git checkout -b <name> origin/<name>
建立本地分支和远程分支的关联
git branch --set-upstream <name> origin/<name>

从远程抓取分支
git pull

打标签
git tag <name>
指定标签信息
git tag -a <name> -m “”
查看标签
git tag

推送一个标签
git push origin <name>
推送所有标签
git push origin --tags
删除一个本地标签
git tag -d <name>
删除一个远程标签
git push origin :refs/tags/<name>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。