Git: File that must be distributed, but ignored /

2019-06-20 09:11发布

Possible Duplicate:
git: can i commit a file and ignore the content changes?

I have a simple problem, and I hope there's a simple solution.

Using Git (and Tower, great app), I have a repository that has a file that everyone needs to download when they clone the repo, BUT that file should never be reuploaded with changes (because it's a configurtion file, with database-specific usernames / passwords, and paths) - the changes are made only when used locally.

What I want to do is ignore whatever change I made locally to that file, so the file won't get updated when I push changes to my repo. How can this be achieved?

It should be noted that:

  1. When I clone the repo, the file shows up, but when I ignore it (local only, not via .gitignore) I have to untrack it, and when I do and push changes back to the server, anyone that clones the repo will NOT download the file << undesired behavior.

  2. If I ignore the file but I DON'T untrack it, the file still shows up in my working directory, waiting to be commited << undesired behavior.

2条回答
兄弟一词,经得起流年.
2楼-- · 2019-06-20 09:20

Commit an example file, gitignore the real name, and have your contributors copy the example into the proper location, then configure it. Alternately, provide a setup script that copies the example and does those steps.

查看更多
劫难
3楼-- · 2019-06-20 09:26

This is properly addressed with smudge/clean scripts.

Alternatively, scripts that do the deploy reset the user names and passwords.

Bending tracking and ignoring is not the way to solve this issue.

Hope this helps.

查看更多
登录 后发表回答