Git操作命令
1、新建代码库
#微信官方账号:AllTests软件测试
#在当前目录中创建新的Git代码库
$ git init
#创建一个新目录,并将其初始化为Git代码库。
$ git init[项目名称]
#下载项目及其整个代码历史。
$ git克隆[url]
2、配置
#微信官方账号:AllTests软件测试
#显示当前Git配置
$ git配置列表
#编辑Git配置文件
$ git config -e [ - global]
#提交代码时设置用户信息
$ git config[-global]user . name“[name]”
$ git config[-global]user . email“[电子邮件地址]”
3、增加/删除文件
#微信官方账号:AllTests软件测试
#将指定的文件添加到临时区域
$ git添加[文件1][文件2].
#将指定的目录添加到临时区域,包括子目录。
$ git add [dir]
#将当前目录中的所有文件添加到临时区域。
$ git add。
#在添加每个更改之前,您将要求确认。
#对于同一文件的多次修改,可以分阶段提交。
$ git add -p
#删除工作区文件,并将此删除放在暂存区。
$ git RM[文件1][文件2].
#停止跟踪指定的文档,但它将保留在工作区中。
$ git rm -缓存的[文件]
#重命名文件,并将此重命名放在临时存储区。
$ git mv[文件-原始][文件-重命名]
4、代码提交
#微信官方账号:AllTests软件测试
#将临时区域提交到仓库区域
$ git commit-m[消息]
#将临时存储区的指定文件提交到仓库区。
$ git提交[文件1][文件2].-m[消息]
#提交自上次提交以来工作区中的更改,并直接转到仓库区域。
$ git commit -a
#提交时显示所有差异信息
$ git commit -v
#使用新的提交,而不是上一次提交。
#如果代码中没有新的更改,则用于覆盖上次提交的提交信息。
$ git commit-amend-m[消息]
#重做上次提交,并包括指定文件的新更改。
$ git commit -修改[文件1][文件2].
5、分支
#微信官方账号:AllTests软件测试
#列出所有本地分支机构
$ git分支
#列出所有远程分支
$ git分支-r
#列出所有本地和远程分支。
$ git分支-a
#创建新分支,但留在当前分支。
$ git分支[分支名称]
#创建一个新分支并切换到它。
$ git结帐-b[分行]
#创建指定提交的新分支。
$ git分支[分支][提交]
#创建新分支以与指定的远程分支建立跟踪关系。
$ git分支-跟踪[分支][远程分支]
#切换到指定的分支并更新工作区。
$ git结帐[分行名称]
#切换到上一个分支
$ git结账-
#在现有分支和指定的远程分支之间建立跟踪关系。
$ git分支集-上游[分支][远程分支]
#将指定分支合并到当前分支
$ git合并[分支]
#选择要合并到当前分支的提交。
$ git精选[提交]
#删除分支
$ git分支-d[分支-名称]
#删除远程分支
$ git推送原点-删除[分支名称]
$ git分支-dr[远程/分支]
6、标签
#微信官方账号:AllTests软件测试
#列出所有标签
$ git标签
#在当前提交中创建新标记
$ git标记[标记]
#在指定的提交中创建新标记
$ git标记[标记][提交]
#删除本地标签
$ git标记-d[标记]
#删除远程标签
$ git推送原点:refs/tags/[tagName]
#查看标签信息
$ git show [tag]
#提交指定的标签
$ git push[remote][标记]
#提交所有标签
$ git push [remote] -标记
#创建指向的新分支
个tag
$ git checkout -b [branch] [tag]
7、查看信息
# 公众号:AllTests软件测试 # 显示有变更的文件 $ git status # 显示当前分支的版本历史 $ git log # 显示commit历史,以及每次commit发生变更的文件 $ git log --stat # 搜索提交历史,根据关键词 $ git log -S [keyword] # 显示某个commit之后的所有变动,每个commit占据一行 $ git log [tag] HEAD --pretty=format:%s # 显示某个commit之后的所有变动,其"提交说明"必须符合搜索条件 $ git log [tag] HEAD --grep feature # 显示某个文件的版本历史,包括文件改名 $ git log --follow [file] $ git whatchanged [file] # 显示指定文件相关的每一次diff $ git log -p [file] # 显示过去5次提交 $ git log -5 --pretty --oneline # 显示所有提交过的用户,按提交次数排序 $ git shortlog -sn # 显示指定文件是什么人在什么时间修改过 $ git blame [file] # 显示暂存区和工作区的差异 $ git diff # 显示暂存区和上一个commit的差异 $ git diff --cached [file] # 显示工作区与当前分支最新commit之间的差异 $ git diff HEAD # 显示两次提交之间的差异 $ git diff [first-branch]...[second-branch] # 显示今天你写了多少行代码 $ git diff --shortstat "@{0 day ago}" # 显示某次提交的元数据和内容变化 $ git show [commit] # 显示某次提交发生变化的文件 $ git show --name-only [commit] # 显示某次提交时,某个文件的内容 $ git show [commit]:[filename] # 显示当前分支的最近几次提交 $ git reflog
8、远程同步
# 公众号:AllTests软件测试 # 下载远程仓库的所有变动 $ git fetch [remote] # 显示所有远程仓库 $ git remote -v # 显示某个远程仓库的信息 $ git remote show [remote] # 增加一个新的远程仓库,并命名 $ git remote add [shortname] [url] # 取回远程仓库的变化,并与本地分支合并 $ git pull [remote] [branch] # 上传本地指定分支到远程仓库 $ git push [remote] [branch] # 强行推送当前分支到远程仓库,即使有冲突 $ git push [remote] --force # 推送所有分支到远程仓库 $ git push [remote] --all
9、撤销
# 公众号:AllTests软件测试 # 恢复暂存区的指定文件到工作区 $ git checkout [file] # 恢复某个commit的指定文件到暂存区和工作区 $ git checkout [commit] [file] # 恢复暂存区的所有文件到工作区 $ git checkout . # 重置暂存区的指定文件,与上一次commit保持一致,但工作区不变 $ git reset [file] # 重置暂存区与工作区,与上一次commit保持一致 $ git reset --hard # 重置当前分支的指针为指定commit,同时重置暂存区,但工作区不变 $ git reset [commit] # 重置当前分支的HEAD为指定commit,同时重置暂存区和工作区,与指定commit一致 $ git reset --hard [commit] # 重置当前HEAD为指定commit,但保持暂存区和工作区不变 $ git reset --keep [commit] # 新建一个commit,用来撤销指定commit # 后者的所有变化都将被前者抵消,并且应用到当前分支 $ git revert [commit] # 暂时将未提交的变化移除,稍后再移入 $ git stash $ git stash pop
10、其他
# 公众号:AllTests软件测试 # 生成一个可供发布的压缩包 $ git archive
本文来自博客园,作者:AllTests软件测试,转载请注明原文链接:https://www.cnblogs.com/alltests/p/15589827.html
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/112507.html