34

我在 github 上创建了一个项目并开始在我自己的机器上搞乱它,我想将所做的更改提交回我在 github 上的 fork 但不提交我对 .cfg 文件所做的更改,因为它包含数据库密码等

4

1 回答 1

73

用这个:

git update-index --skip-worktree path/file.cfg

并恢复:

git update-index --no-skip-worktree path/file.cfg

最后,如果要列出标有 的文件skip-worktree

git ls-files -v | grep ^S | awk '{print $2}'

为简化起见,您可以在$HOME/.gitconfig:

[alias]
    ls-ignored-changes = !git ls-files -v | grep ^S | awk '{print $2}'

然后你可以只输入git ls-ignored-changes. git-completion如果您有适当的位置(对于 bash、tcsh、zsh),它甚至可以与自动完成一起使用。

于 2010-11-06T17:20:37.693 回答