我是Git的新手,所以请耐心等待我!
我正在Unfuddle上使用远程存储库的克隆。克隆是ExpressionEngine的安装,因此我需要对某些文件进行更改以使CMS在我的本地计算机上运行,我在MAMP下运行它。但是,我不希望在完成后将这些修改过的文件重新推送到远程存储库,我也不希望它们坐在Tower中,等待提交更改。
我已经尝试忽略这些文件,但这会导致问题......忽略被推送到存储库,我也不想要!其他人正在使用此存储库,并且不应在其系统上忽略这些文件。我只是希望Tower按原样离开远程存储库,但假装我对本地文件所做的更改不存在。
我要求不可能吗?
-UPDATE- 具体来说,我想与Tower合作,因此知道如何在该框架内执行git命令将是最有帮助的。
答案 0 :(得分:3)
对跟踪的文件使用git update-index --assume-unchanged
。这就像跟踪文件的“临时忽略”。这也只适用于您的克隆,而不适用于任何其他人的
http://www.kernel.org/pub/software/scm/git/docs/git-update-index.html
此外,对于未跟踪文件,您不必使用.gitignore
来忽略它们,这会使忽略传播到repo的任何克隆。您可以使用$GIT_DIR/info/exclude
文件忽略未跟踪的文件,仅在您的仓库中。
答案 1 :(得分:2)
Tower中有一个不使用gitignore的排除选项
要查看所有排除的文件/文件夹:转到设置或文件 - >编辑排除的文件模式。
来源:http://www.git-tower.com/files/applicationHelp/pgs/Browse_IgnoringFiles.html
答案 2 :(得分:0)
根据您的描述。我想您不希望您的文件污染您的远程存储库,但您仍然希望将文件推送到服务器上。
git中有一个概念,您可以在本地/远程存储库上创建分支。
在存储库中创建分支后,可以推送所需的任何代码/文件。其他开发人员不应该使用您的分支,他们将无法获取您的代码/文件。
答案 3 :(得分:0)
Git仅将忽略模式应用于未跟踪文件。您不能使用忽略模式来忽略已经由git跟踪的文件的更改。不过,请参阅https://gist.github.com/1423106了解人们解决问题的方法。这是针对本土git,塔可能会提供与yaz建议不同的东西。