Git常用命令

Git是工作中使用最多的一个工具,平时的代码也是用git来管理。分享一下平时使用最多的Git命令。

#先上一张Git结构图
这里写图片描述

命令

1、初始化git

git init //创建
git clone path //clone代码
git config --global user.email "you@examle.com" //配置email
git config --global user.name “name” 配置用户名

2、常用操作

git add <file> //从workspace添加到暂存区(index)
git add . //添加所有文件到暂存区
git commit -m “message” //将暂存区的文件提交到本地仓库
git commit --amend //与上次commit合并,可修改最新一条提交的change-id和message
git push origin master //将本地仓库的修改推送至远程master分支(需要code review)
git pull //更新本地仓库(少用,推荐用下条命令)
git fetch && git rebase origin/master //更新远程仓库至本地并合并到master分支
git status //查看修改的文件状态
git diff <file> //查看文件的修改内容
git show commit-id //显示某次提交的内容
git show branch-name //查看某个分支的最近提交的内容
git show commit-id --stat //查看commit-id的提交修改了哪些文件
git log -G “str” filePath/ //查找某个文件中某个字符串的提交历史
git stash / git stash save //将工作区的修改存储到暂存区
git stash show //查看暂存区最近一次记录
git stash pop //取出最近一次修改
git stash list //查看暂存区列表
git stash apply stash@{N} //取出暂存区列表相应的缓存
git stash drop stash@{N} //删除暂存区列表对应记录

3、撤销

git reset HEAD <file> //将文件从暂存区恢复到工作区
git reset HEAD . //将所有文件从暂存区恢复到工作区
git checkout – <file> //将修改的文件恢复到最新提交后的状态
git checkout – . //将所有修改的文件恢复到最新提交后的状态

4、分支

一般修改都是在其他分支进行,最后将提交合并到主分支,所以掌握对分支的操作也是至关重要。

git branch //查看当前分支
git branch -d branch-name //删除 branch-name 分支
git checkout branch-name //切换到 branch-name 分支
git cherry-pick commit-id //合并其他分支的 commit 到当前分支
git checkout -b branch-name //在当前分支的基础上创建一个新分支,并切换过去
git merge branch-name //将branch-name分支的改动合并到当前分支
git checkout -b localName origin/remoteName //获取远程分支removeName到本地新分支localName
git push origin test:test //提交本地test分支作为远程test分支
git branch branch-name SHA1_OF_HASH //如果意外删除一个分支,可以重新创建它
git reflog //查看最近访问过的SHA1数
如果想看git rebase 和 git merge的选择时机,请点我

5、日志

git log //查看所有日志
git log -10 //查看最新10条日志
git log --grep=“message” //查找含有指定内容的日志
git log | grep “message” // 如上
git log --author=“Name” //根据作者查找日志,需加引号
git log <file> //查看指定文件的日志
git log -S “message” //查看修改中含有“message”的日志
git log branch-name ^master //查看master分支上没有的branch-name分支的内容,^表示非
git blame <file> | grep “message” //找出谁修改了某个文件的message

6、冲突

git diff //对比差异
git diff HEAD //对比工作区和最后一次commit的差异
删除 <<<<, ====, >>>>等标记然后保存,需使用git add 和git commit -m "message"提交

未完待续…

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值