Git常用命令

学习的过程中记录一些东西是很好的习惯,在学习 git 的过程中,把常用的命令记录下来,以供参考。需要的时候打开这个页面,Ctrl+F,哈哈。

写作是一件很奇妙的事情,要把学会的东西输出需要对所学知识进行再一次的思考与加工,可能在加工的过程中发现了很多之前学习的时候没有发现的盲点,这时就要多花些时间去把盲点补上,这个过程中,自己对这些知识会有一个更加深入的理解。

在整理和记录这些常用命令的时候,基本已经把这些命令折腾得烂熟于心了。

====================上面是几句想说的话=====================

========================下面是正文========================

git status

  • 用于查看哪些文件处于什么状态
  • git status -s 简短的状态报告
  • M 代表修改过的文件,在左边表示文件被修改并暂存,放在右边代表修改但没暂存
  • MM 代表修改并暂存后又再次修改
  • A 新添加到暂存区的文件
  • ?? 新添加的未跟踪文件

git add

  • 开始跟踪一个文件或目录,若为路径则递归地跟踪该目录下的所有文件
  • 可以用于开始跟踪新文件,或者把已跟踪的文件放到暂存区,还能用于合并时把有冲突的文件标记为已解决状态。可以理解为:“添加内容到下一次提交中”
  • 注意,有个坑!:运行了 git add 之后又作了修订的文件,需要重新运行 git add 把最新版本重新暂存起来。否则运行 commit 时提交的是最后一次执行 git add 命令时的版本!

git diff

  • 当前做的哪些更新还没有暂存?
  • 有哪些更新已经暂存起来准备好了下次提交?
  • git diff 此命令比较工作目录中当前文件和暂存区快照之间的差异
  • git diff --staged 比较暂存区的内容跟暂存之前的快照之间的差异
  • 将通过文件补丁的格式显示具体哪些行发生了改变

git difftool 

  • 调用图形化界面的插件展示文件差异

git commit 

  • 提交暂存区域的文件,直接提交会打开默认的文本编辑器输入本次提交的说明
  • git commit -m ‘本次提交的说明’ 
  • git commit -a 跳过 git add,把所有已跟踪过的文件暂存起来一并提交

git rm 

  • 移除某个文件,连带从工作目录中删除指定的文件
  • git rm -f 如果删除之前修改过且已暂存,则需要 -f 才能删除
  • git rm --cached filename 把文件从暂存区域移除,但仍然保留当前工作目录中的文件
  • git rm 还可以使用glob模式,即shell简化版的正则表达式
  • git rm log/\*.log 移除log目录下所有.log文件
  • git rm \*~ 移除以 ~ 结尾的所有文件
  • git mv file_from file_to 文件重命名

git log 

  • 不用任何参数则显示所有提交历史,最新的排在最上面
  • git log -p -2 显示最近两次提交的内容差异
  • git log --stat 查看每次提交的简略的统计信息
  • git log --pretty=oneline 指定使用不同的方式展示提交历史,支持的选项有:oneline, short, full, fuller, format
  • git log --preey=format 使用指定的格式输出
  • git log --pretty=oneline --graph 使用ASCII字符串来形象展示历史

git commit --amend

  • 此次提交与上次提交的内容合并成一次提交。如果上次提交以来你还未做任何修改,那么快照会保持不变,你仍可以修改提交信息。
  • 使用场景:commit之后发现有几个文件没add或者提交信息写错了,这时可以使用这个命令。

例如:

# 将修改后要提交的文件暂存
git add README.md
# 本意是想提交README.md和first.txt的提交,但是只暂存了README.md
git commit -m "更新README.md文件和first.txt"
# 这时发现了问题,于是把first.txt添加进来
git add first.txt
# 再次提交,执行后会自动打开默认编辑器,里面是上次的提交信息,可以直接修改。
git commit --amend

git reset HEAD file

  • 将暂存区的文件取消暂存

git checkout -- file

  • 撤消对文件的修改,相当于svn中的revert
  • 文件会回滚到上次 commit 后的状态
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值