保存你的更改和检查仓库状态

git add

git add 命令将工作目录中的变化添加到缓存区,git add 不会怎么影响你的仓库——在你运行 git commit 前更改都不会被记录

git commit

git commit命令将缓存的快照提交到项目历史,快照被提交到本地仓库,不会和其他 Git 仓库有任何交互。

Git 对提交信息没有特定的格式限制,但约定俗成的格式是:在第一行用 50 个以内的字符总结这个提交,留一空行,然后详细阐述具体的更改。比如:

添加文件

- 优化代码
- 修改bug
- 添加新功能

git status

git status 命令显示工作目录和缓存区的状态。列出已缓存、未缓存、未追踪的文件。

git log

git log 命令显示已提交的快照,你可以列出项目历史,筛选,以及搜索特定更改。
用法:

#使用默认格式显示完整地项目历史。如果输出超过一屏,你可以用 空格键 来滚动,按 q 退出
git log

#用 <limit> 限制提交的数量。比如 git log -n 3 只会显示 3 个提交
git log -n <limit>

#将每个提交压缩到一行。当你需要查看项目历史的上层情况时这会很有用
git log --oneline

#除了 git log 信息之外,包含哪些文件被更改了,以及每个文件相对的增删行数。
git log --stat

#显示代表每个提交的一堆信息。显示每个提交全部的差异(diff),这也是项目历史中最详细的视图。
git log -p

#搜索特定作者的提交。<pattern> 可以是字符串或正则表达式
git log --grep="<pattern>"

#只显示包含特定文件的提交。查找特定文件的历史这样做会很方便
git log <file>

# --graph 标记会绘制一幅字符组成的图形,左边是提交,右边是提交信息。
# --decorate 标记会加上提交所在的分支名称和标签。
# --oneline 标记将提交信息显示在同一行
git log --graph --decorate --oneline

忽略文件

只需要将路径放在一个特定的.gitignore文件中。所有想要忽略的文件应该分别写在单独一行,*字符用作通配符。

讨论

git log 3157e..5ab91 会显示所有ID在 3157e 和 5ab91 之间的提交。除了校验总和之外,分支名、HEAD 关键字也是常用的引用提交的方法
字符用于表示提交的父节点的相对引用。比如,3157e1 指向 3157e 前一个提交,HEAD~3 是当前提交的回溯3个节点的提交。

#显示了在 some-feature 分支而不在 master 分支的所有提交的概览。
git log --oneline master..some-feature

#注意:
..句法是比较分支很有用的工具
posted @ 2017-11-01 11:58  张建斌  阅读(402)  评论(0编辑  收藏  举报