[总结]Git常用命令

Git内部的三种状态:已提交(committed),已修改(modified),已暂存(staged)

 

git help <verb>      //git help branch:查看branch帮助信息,可以直接用git help

git <verb> --help //git branch --help:查看branch帮助信息,可以直接用git--help

man git-<verb>      //mangit-add:查看add帮助信息,可以直接用man git

 

配置git(--global更改的配置文件就是位于你用户主目录下的那个)

git config --global user.name"usernmame"  //必须配置项-用户名(邮箱前缀)

git config --global user.email"email"   //必须配置项-电子邮件

git config --global core.e 

git config --global core.editor vim    //配置编辑工具为vim

git config --global color.ui auto    //配置颜色自动

git config --global merge.tool vimdiff    //配置差异分析工具

git config --list   //查看配置信息

git config user.name   //可以查看某个环境变量配置

git config --global alias.ck checkout   //设置别名

 

git clone ssh://... -b branch_name   //克隆代码

git remote                   //查看远程

 

git branch branch_name         //创建分支

gitbranch -vv              //可以查看依赖关系

git branch -a                  //查看本地分支和远程分支

git branch -d                   //删除合并的分支

git branch -D                   //删除分支,无论是否合并

git branch -m                     //移动或重命名分支

git branch -M                    //移动或重命名分支,即使目标存在

git branch -v                 //查看每个分支的最后一个commit

git branch --merged                //查看哪些分支已被并入当前分支

git branch --no-merged             //查看哪些分支未被并入当前分支

git branch --contain commit id   //查找包含一个指定commit所在branch

 

git checkout -b branch_name         //创建并切换分支

git checkout -b branch_n origin/ branch_n //建立一个remote分支的tracking分支

git checkout branch_name            //切换分支

git checkout filename          //恢复文件到修改前的状态,文件没有git add前

git checkout commit_id          //回滚到特定commit

git checkout tag_a       //回退到tag_a代表的点

 

git diff filename           //检查修改但为commit的文档

git diff --cached           //暂存文件和快照的差异

git diff HEAD           //检查最新版本和原始文件的差别

 

git add filename          //添加更新文件,文件状态变为staged

git add -a               //可将所有被修改或被删除的文档状态提交到仓库

 

git status                       //查看状态

git status -u                   //查看untracked文件

git status -s                   //查看简要状态

git status -uno              //-uno表示不显示没有tracked

 

git commit       //提交修改

git commit -m "version update info"    //提交修改

git commit -a       //自动把所有跟踪的文件暂存起来一并提交

git commit --amend   //重新提交刚才的操作(修改最后一次的提交)

 

git log              //查看log信息

git log -p -2    //查看最近两次的更新,并显示修改情况

git log --stat          //只显示简要的增改行数

git log --stat --summary   //查看每次版本的大致变化情况

git log --pretty=oneline  //将每个提交放在一行来显示(pretty=后跟要显示的格式)

git log --pretty=short

git log --pretty=full

git log --pretty=fuller

git log --pretty=format:'%h : %an : %ad :%s' --topo-order --graph --date=short //查看树形log

git log --name-only  //仅在提交文件后显示已修改的文件清单

git log --name-status  //显示新增、删除、修改文件清单

git log --since=2013-08-01  //显示8月1号后的提交

git log --committer=someone  //查找指定committer所有的commit

 

git cherry-pick <commit id>   //merge一个指定的commit

 

git fetch       //获取数据更新,但不与本地合并

git pull             //下载更新

git rebase branch_name  //衍合分支

git push             //上传更新

 

git reset --hard HEAD  //暴力忽略一些修改过的中间文件

 

git stash     //不commit,保留当前改动,回复到clean的HEAD

git stash pop  //从缓冲区中恢复并删除缓冲区

git stash apply     //从缓冲区中恢复,不删除缓冲区

git stash list      //查看缓冲区列表

git stash apply stash@{0}  //你可以选择特定的stash来apply

git stash drop          //你可以drop掉你不顺眼的stash

git stash drop stash@{1}    //drop指定的stash,比如stash 1

 

git remote show origin  //查看远程仓库的信息

git remote rename .. ..  //重命名远程仓库

git remote rm ..    //删除远程仓库

 

git tag   //列出所有标签

git tag -a v1.0 -m"messages"  //创建含附注的标签

git tag v1.0   //创建轻量级标签

git tag -a v1.0 <commit-id>   //为以前的commit添补标签

git tag -d    //删除无意义的tag

git push origin v1.4   //分享标签

git push origin --tags    //推送所有标签到远程服务器

 

git show --name-only commit_id  //查找指定commit涉及到的所有文件

git show --name-status commit_id  //显示指定commit涉及到的文件的增删改情况

git show commit_id   //查看更新细节

git show --stat     //查看最近一次提交中的修改情况

git show c2bce89   //查看版本更新细节时,可以只输入commitId前几位作为参数

git show HEAD     //查看当前分支的最新版本最新更新细节

git show HEAD^           //查看HEAD 的父版本更新细节

git show HEAD^^         //查看HEAD 的祖父版本更新细节

git show HEAD~4          //查看HEAD 的祖父之祖父的版本更新细节

 

git rm filename   //从git目录中删除其对某个文件的追踪并删除文件本身
git rm -f filename  //删除暂存区中的文件

git rm --cached    //将文件从git库中删除,不删除文件本身

 

git mv file_old file_new  //修改文件名

git mv src_file dest_file  //重命名或移动文件

 

git merge <some branch> 把另一条分支合并到当前分支参数:--no-commit合并但不提交

 

git reset HEAD <file>   //取消暂存文件(gitadd后没有git commit的文件)

git checkout <file>   //撤销文件的修改,

 

git clean -dxf 与 git reset --hard   //删除所有编译产生的文件

 

git remote      //查看当前远程库

git remote -v    //查看当前远程库,并显示对应克隆地址

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值