问题:
我克隆了一个存储库,有一些配置文件来自定义已编译应用程序的行为,我更改了其中一些(大约10个)以满足我的需求。现在,每次我提交的东西,我都必须在git status
(或者#34;非分页文件"在我的日常使用的GUI中)的输出中逐行检查,以及那10个文件,我不想承诺,总是在那里,这很快就会变得烦人。
当我需要git pull
时,让git忽略这10个文件,但当我git
更改(通过上游)这些文件的版本时,是否有一些未知(对我来说)git或技巧的功能,我仍然会发生冲突(如果有的话)?
我无法将所有这些文件合并到一个大配置中,部分原因是它们是不同的东西,部分是因为应用程序现在在生产中运行了一段时间。
Git别名可能不会起作用,因为如果不需要花哨的话,我通常会使用GUI,(更好看的差异,方便控制提交内容等),而不是{{1}}在一个终端。
答案 0 :(得分:2)
您可以使用.gitignore
文件并在那里添加这些10个文件的路径。
如果由于某种原因您不想使用.gitignore
,您可以尝试.git/info/exclude
- 它的工作方式与.gitignore
类似,但不会以git状态显示,因为它在.git
文件夹中。
答案 1 :(得分:1)
一个技巧如下:
您可以尝试:结帐新分支
git checkout -b mybranch
提交对这些文件的更改
git add <config-files>
git commit -m "my safe of config files"
检查是否有无人值守的chagnges:
git status
现在,如果您执行以下操作
git pull origin master
您将获得所有远程更改,以及配置文件(如果有)的冲突
每当您想推送更改时,您都不希望将更改推送到配置文件
git checkout master
git cherry-pick mybranch
选择你想要/不想推的东西
答案 2 :(得分:0)