git commit -m //提交并填写详细信息
git commit -a //省略了add放入缓存一步,直接提交
git reset HEAD —hello.js // 取消已缓存的内容
git rm hello.js //将文件从缓存区删除
git rm —cached //在工做目录中保留此文件
这与 git reset HEAD
将条目取消缓存是有区别的。 “取消缓存”的意思就是将缓存区恢复为咱们作出修改以前的样子。 在另外一方面,git rm
则将该文件完全从缓存区踢出,所以它再也不下一个提交快照以内,进而有效地删除它。
git mv
虽然有 git mv
命令,但它有点多余 —— 它作得全部事情就是 git rm --cached
, 重命名磁盘上的文件,而后再执行 git add
把新文件添加到缓存区
分支与合并
git branch // 列出可用的分支
git branch testing //建立testing分支
git checkout testing //切换到testing分支
git checkout -b testing //建立新分支并当即切换到他
git branch -d testing //删除testing分支
git merge testing // 将testing分支合并到主分支上
git log //查看日志
git log —oneline //查看历史纪录的简洁版本
git log —oneline —graph //查看历史何时出现分支、合并
git tag -a v1.0 //给历史纪录中的重要一点打上标签
并执行 git log —oneline —decorate —graph //查看标签
分享与更新项目
git fetch github/master 从远端仓库下载新分支与数据
git pull 从远端仓库提取数据并尝试合并当前分支
git push 推送你的新分支与数据到某个远端仓库
检查与比较
git diff
简而言之 使用 git diff
查看某一分支自它偏离出来起与过去某一点之间项目的改动。 老是使用git diff branchA...branchB
来查看 branchB 与 branchA 的相对差值,这会让事情简单点。
git log // 过滤的你的提交历史纪录
git log —author //寻找特定做者的提交
git log —since —before 根据日期过滤提交纪录
例如,若是我要看 Git 项目中三周前且在四月十八日以后的全部提交,我能够执行这个(还用了 --no-merges
选项以隐藏合并提交):
git log --oneline --before={3.weeks.ago} --after={2010-04-18} --no-merges
git log —grep // 提交注释过滤提交记录
git log -S // 依据所引入的差值过滤
git log -p 显示每一个提交引入的补丁
git log --stat 显示每一个提交引入的改动的差值统计