只推送一些文件

时间:2016-09-09 14:25:37

标签: git gitignore

我有一个服务器的git存储库。 该服务器需要一些文件,但这些文件只需要推送一次。 因此,当有人编辑它时,它不必被推送到github,但当有人下载​​存储库时,他们应该获得未经编辑的文件。

服务器需要运行这些文件,但是对于每个人来说这些文件是不同的,这就是为什么我不希望它再次被推送。

我该怎么做?

3 个答案:

答案 0 :(得分:5)

如果您还没有提交文件,我说要将文件名添加到.gitignore文件中,如:

<filename>.<extension>

所以如果文件是package.json:

package.json

可以使用*

制作通配符

*.json

AoeAoe评论说:您可以稍后使用git add --force添加该文件,以取代.gitignore文件。

现在,如果您的文件内容仅仅是10个配置规则,我会说:创建一个模型并将其写在readme.md中并指示您的同事创建他们的拥有,否则,您应该遵循更新部分中的建议。

更新Edward Thompson声明: .gitignore不适用于上传的文件您将被迫使用{{1 }}

强制文件不更新:

git update-index

要再次启用更新:

git update-index --assume-unchanged path/to/file

答案 1 :(得分:1)

git远程存储库应忽略这些文件更改,因为它们需要本地管理。您必须将这些文件的路径添加到.gitignore文件中。如果您已经提交并推送了文件的原始版本,当有人克隆存储库时,它将接收原始文件而不进行任何本地更改。

How to add gitignore file

How to ignore certain files

答案 2 :(得分:1)

从索引[1]中删除文件是一种更好的做法:

git rm --cached <file>

.gitignore的目的是永远不会跟踪并且永远不会将文件添加到索引中。

[1] Making git "forget" about a file that was tracked but is now in .gitignore