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:将本地提交推送到远程仓库。