设为首页 收藏本站
查看: 767|回复: 0

[经验分享] git-commit

[复制链接]

尚未签到

发表于 2018-1-14 20:54:02 | 显示全部楼层 |阅读模式
  git-commit
  软件版本:
  操作系统:ubuntu10.04
  内核版本:Linux version 2.6.32-36-generic
  git 版本:git version 1.7.0.4
  目录:
  1. 文件状态
  2. 提交
  2.1 git commit 与 git commit -a
  2.2 添加提交信息
  3. 修改/取消
  4. 参考资料
  1. 文件状态
  一般仓库中的文件可能存在于这三种状态:
  1)Untracked files → 文件未被跟踪;
  2)Changes to be committed → 文件已暂存,这是下次提交的内容;
  3) Changes bu not updated → 文件被修改,但并没有添加到暂存区。如果 commit 时没有带 -a 选项,这个状态下的文件不会被提交。
  

$git status  # On branch master
  # Changes to be committed:
  #   (use "git reset HEAD <file>..." to unstage)
  #
  #    new file:   file2
  #
  # Changed but not updated:
  #   (use "git add <file>..." to update what will be committed)
  #   (use "git checkout -- <file>..." to discard changes in working directory)
  #
  #    modified:   file
  #
  # Untracked files:
  #   (use "git add <file>..." to include in what will be committed)
  #
  #    file3
  

  2. 提交
  git 提交的命令为:git commit 。
  2.1 git commit 与 git commit -a
  git commit 提交的是暂存区里面的内容,也就是 Changes to be committed 中的文件。
  

$git commit
[master 5b61c29] run git commit

  0 files changed, 0 insertions(+), 0 deletions(-)
  create mode 100644 file2
  $git status
  # On branch master
  # Changed but not updated:
  #   (use "git add <file>..." to update what will be committed)
  #   (use "git checkout -- <file>..." to discard changes in working directory)
  #
  #    modified:   file
  #
  # Untracked files:
  #   (use "git add <file>..." to include in what will be committed)
  #
  #    file3
  

  git commit -a 除了将暂存区里的文件提交外,还提交 Changes bu not updated 中的文件。
  

$git commit -a
[master bd77524] run git commit -a

  1 files changed, 2 insertions(+), 0 deletions(-)
  create mode 100644 file2
  $git status
  # On branch master
  # Untracked files:
  #   (use "git add <file>..." to include in what will be committed)
  #
  #    file3
  

  2.2 添加提交信息
  如果直接运行 git commit (-a) 则会默认使用 vi 添加描述。也可以使用 git config --global core.editor 命令更改为你喜欢的编辑器。还有一个方法就是使用 -m 选项直接添加提交信息。
  

$git commit -a -m "commit info"  

  3. 修改/取消
  有时候我们会发现有几个文件漏了提交或者想修改一下提交信息,又或者忘记使用 -a 选项导致一些文件没有被提交,我们希望对上一次提交进行修改,或者说取消上一次提交,这时候我们需要使用 --amend 选项。
  

$git commit --amend  

  可以对上一次提交进行修改,比如我们发现漏了 file3 没有提交,我们可以运行一下操作:
  

$git status  # On branch master
  # Untracked files:
  #   (use "git add <file>..." to include in what will be committed)
  #
  #    file3
  nothing added to commit but untracked files present (use "git add" to track)
  $git add file3
  $git commit --amend
[master 671f5cc] commit --amend, add file3

  1 files changed, 2 insertions(+), 0 deletions(-)
  create mode 100644 file2
  create mode 100644 file3
  $git status
  # On branch master
  nothing to commit (working directory clean)
  

  又或者我们发现在提交时忘记使用 -a 选项,导致 Changes bu not updated 中的内容没有被提交,我们可以使用:
  

$git commit --amend -a  

  4. 参考资料
[1] 《pro git》

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-435129-1-1.html 上篇帖子: Git使用笔记 下篇帖子: 使用TFS+GIT实现分布式项目管理
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表