Git Cookie
1 前言
一些关于 git 的小知识。用于git问题收集。
2 Rewrite History
git filter-branch --commit-filter ' if [ "$GIT_AUTHOR_EMAIL" = "schacon@localhost" ]; then GIT_AUTHOR_NAME="Scott Chacon"; GIT_AUTHOR_EMAIL="schacon@example.com"; git commit-tree "$@"; else git commit-tree "$@"; fi' HEAD
3 Delete git submodles
http://yuguo.us/weblog/git-submodule/
$ git rm --cached [path] # 编辑.gitmodules文件,将子模块的相关配置节点删除掉 # 编辑.git/config文件,将子模块的相关配置节点删除掉[这一步好像很不科学,为什么信息要保存两份?] # 手动删除子模块残留的目录
4 Update Index
这个命令可以让git不跟踪指定文件,但同时可以继续保存在项目中。有点类似于 .gitignore
的作用。
$ git update-index --assume-unchanged FILE_NAME $ git update-index --no-assume-unchanged FILE_NAME