1

所以在我的目录中,有一个特定于机器的配置文件,我不想为我的 git repo 跟踪它。但问题是,我需要该文件来测试我的应用程序,因此当我拉取该存储库或创建分支时,我需要手动备份该配置文件并将其添加到目录中。任何人都遇到过这样的问题并且可以提供解决方案吗?

4

4 回答 4

2

通常,我会将示例配置文件添加到 git 存储库,然后将其复制并修改特定于机器或开发环境的值。当不希望密码或 API 密钥等敏感信息受版本控制时,此方法也很有用。

于 2013-02-23T18:57:43.870 回答
0

好吧,首先,你要求 git 做一些它不做的事情。这就像生气,当您在系统上复制目录时,cp 不会自动知道将文件从不同的目录复制出来并将它们添加到目标。这没有任何意义。

最简单的解决方案就是设置一个 shell 脚本或别名来满足你的需求。

alias clone_repo="git clone ssh://git@some.host/git.repo /Users/bob/my_repo && cp /Users/bob/my_saved_config_file.txt /Users/bob/my_repo"

作为一种更高级的解决方案,git hooks 是 shell 脚本。据推测,您可以编写一个克隆后挂钩来创建文件。但是,您必须使用 --template 开关进行克隆。

于 2013-02-24T14:07:23.713 回答
0

是否有任何理由将其添加到您的.gitignore遗嘱中对您不起作用?

该文件将保留在您的计算机上,但不会被 git 跟踪。如果有人拉你的仓库,如果有必要运行你的应用程序,你需要指示他们创建这个文件。

你可以在你的README.

于 2013-02-23T18:53:48.360 回答
0

您可以在工作目录中添加任何您想要的文件,但不想commit在名为.gitignore的文件中添加

于 2013-02-23T18:57:02.140 回答