我有一个 .htaccess 文件,其中包含仅适用于我的计算机的特定设置。
当我从另一个人的分支中提取更改时,我总是必须撤消所做的更改。
我想我可以做 git checkout file hash
来取回原始文件(这是正确的吗?如果不正确,有人可以告诉我正确的命令),但是我没有办法告诉 Git跟踪我的分支上的文件,但从不从另一个远程分支 pull 该文件?
类似的说明:如何让 git 跟踪特定文件,但从不将其推送到远程分支。例如,我有一个包含密码详细信息的文件,但如果我将文件公开存储在 GitHub 上,那么我不希望该文件被推送。
谢谢
最佳答案
将文件恢复到以前版本的命令实际上是
git checkout commit file
参数的顺序与问题中的顺序相反。提交可以是哈希值,也可以是引用提交的任何其他方式,例如分支或标记名称。
您可以设置 git 通过指定自定义 merge 驱动程序来自动保留您的 .htaccess
文件版本。
为此,首先您需要在 git 配置中定义 merge 驱动程序,然后指定该 merge 文件应用于 .htaccess
文件。
git config merge.mine.driver 'touch %A'
echo .htaccess merge=mine >> .gitattributes
但是,如果您的本地分支将 merge 到您从中提取更改的分支,那么这不是一个好主意。这将记录对该文件的更改已被 merge ,即使它们实际上被完全忽略。因此,如果您的分支 merge 回另一个分支,对该文件的所有更改都可能会被恢复。
关于git - Git 如何跟踪您的存储库中的文件而不覆盖其他人分支中的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13786878/