如标题所述,有没有办法设置.gitignore文件,以便忽略文件,除非是克隆?
我现在正在开发一个项目,该项目将在5台机器上进行测试,并且所有项目都将定期更新。除非我需要更改配置文件,否则使用git pull会使事情变得简单。出于某种原因,我需要在开发期间使用localhost时经常更改配置文件,但对于其他计算机,它们可以保持不变。目前我只是忽略了配置文件,但是我需要在将代码克隆到新机器后复制配置文件。所以,为了使事情变得更简单,有没有办法设置.gitignore文件以便忽略文件,除非git clone?
答案 0 :(得分:0)
Git维护一个文件,其中包含根据哪些文件被忽略的规则。
您可以在此文件中提及您的规则
.git/info/exclude
答案 1 :(得分:0)
我猜你的repo中可以有一些通用的配置文件(它会与repo一起克隆),然后把它放在.gitignore中,这样它就不会被注意到变化并且没有跟踪它,所以不会这样做。是拉的问题。
答案 2 :(得分:0)
请勿使用.gitignore,您可能需要更改默认配置。 如果您不想将Maven与程序集和测试目录一起使用,请尝试创建配置脚本。 在Unix上,这就像
target=$1
case ${target} in
"site1") sed -i 's/^host=.*/host=site1/' xx.cfg ;; // sed -i only on Linux
*) echo ${target} not supported
esac
答案 3 :(得分:0)
您可以做的一件事是,在更改配置文件的计算机上,运行以下命令:git update-index --assume-unchanged <file>
。这样,当您运行git commit -a
时,指定的文件将不会添加到索引中,因此即使已更改,也不会提交。然后你不必担心忽略其他5台机器上的文件。