是否可以拥有repo特定的.gitignore文件?例如:
[原创] .gitignore:
[另一个] .gitignore:
这背后的目的是我们使用git部署到托管云服务,我们希望将dev文件保留在版本控制中,但不要将它们推送到repo。
是的,您可以在每个存储库中的.git/info/exclude
中放置每个存储库忽略模式。
(注意,这只会影响每个存储库中忽略的内容,它不会影响您在源代码管理和推送下主动放置的文件。我不完全清楚您所需的用例。)
是的,你可以,只是不能将它们放在同一个文件夹中。如果您创建一个新文件夹,那天“部署”并在那里发布您的部署数据,它将使用该文件夹中的.gitignore(而不是根文件夹)。
您可以使用git hooks(.git中的脚本)来完成此操作。结账后听起来不错。
我的情况:
有一个名为
alex.todo
的文件,其中包含有关该项目的个人注释。我有两个远程回购推(origin
和alex
)。一个用于与其他开发人员共享代码(我使用.gitignore
排除alex.todo
文件),一个用于备份此项目,可以保留alex.todo
文件。
我的最终解决方案
使用temp分支将
alex.todo
推送到备份仓库。
# Step 1
git checkout -b alex # 'alex' or whatever branch name you prefer
# Step 2
# now you can edit your .gitignore to include your 'alex.todo' file
# Step 3
git add . && git commit -m 'commit some ignore files'
git push alex alex:master # git push <remote> <local branch name>:<remote branch to push into>
# Step 4
git checkout master # return to branch master and do any editings(commits)
# Step 5
# make sure branch alex is in sync with master whenever you want to push the project to the backup repo
git checkout alex
git merge master # .gitignore will not automatically be included for commit unless specifically added
# now you can repeat step 3 to push the project to the backup repo