螺竹编程
发布于 2024-08-04 / 2 阅读
0

Git命令

git命令

关键词说明

#关键词说明
master: 默认开发分支
Head: 默认开发分支
origin: 默认远程版本库
Head^: head的父提交

创建版本库

#创建版本库
git clone <url>     #克隆远程版本库
git init            #初始化本地版本库

修改提交拉取推送

提交和修改

#修改和提交
git status		    #查看状态
git diff		    #查看变更的内容
git add --all               # 当前项目下的所有更新
git add .		    #跟踪当前目录下的所有更改
git add <file1> <file2>	    #跟踪指定的文件
git mv <old> <new>	    #文件改名
git rm <file>		    #删除文件
git rm --cached <file>	    #停止跟踪文件但不删除
git commit -m "commit message"	#提交所有更新过的文件
git commit --amend          #修改最后一次提交

#查看提交历史
git log				#查看提交历史
git log -p <file>		#查看指定文件的提交历史
git blame <file>		#以列表方式查看指定文件的提交历史

#撤销
git reset --hard HEAD	#撤销工作目录中所有未提交文件的修改内容
git checkout HEAD <file>	#撤销指定的未提交文件的修改内容
git revert <commit>	#撤销指定的提交

推送拉取

#远程操作
git remote -v			#查看远程版本库信息
git remote show <remote>	#查看指定远程版本库信息
git remote add <remote> <url>	#添加远程版本库
git fetch <remote>	        #从远程库获取代码
git pull <remote> <branch>	#下载代码及快速合并
git push -u origin master       # 第一次需要关联
git push <remote> <branch>	#上传代码及快速合并
git push <remote> :<branch/tag-name>	删除远程分支或标签
git push --tags			#上传所有标签

分支合并

分支与标签

#分支与标签
git branch			#显示所有本地分支
git checkout <branch/tag>	#切换到指定分支或标签
git branch <new-branch>	#创建新分支
git branch -d <branch>	#删除本地分支
git tag				#列出所有本地标签
git tag <tagname>		#删除标签

合并与衍生

#合并与衍合
git merge <branch>	#合并指定分支到当前分支
git rebase <branch>	#衍合指定分支到当前分支

撤销同步

已修改,未暂存

$ git diff # 列出所有的修改
$ git diff xx/xx.py xx/xx2.py # 列出某(几)个文件的修改

$ git checkout # 撤销项目下所有的修改
$ git checkout . # 撤销当前文件夹下所有的修改
$ git checkout xx/xx.py xx/xx2.py # 撤销某几个文件的修改
$ git clean -f # untracked状态,撤销新增的文件
$ git clean -df # untracked状态,撤销新增的文件和文件夹

# Untracked files:
#  (use "git add <file>..." to include in what will be committed)
#
#	xxx.py

已暂存,未提交

git add <file>:将文件添加到暂存区。
git reset <file>:将文件移出暂存区,取消暂存。

已提交,未推送

git commit -m "commit message":提交暂存区中的文件,并创建一个提交记录。
git commit --amend:修改最后一次提交的提交消息或添加更改。
git reset HEAD~:取消最后一次提交,将文件移回暂存区。

已推送

git push:将本地提交推送到远程仓库。