Git 合并分支合并时如何忽略某些文件?
我有一个项目,它部署在heroku上。现在我需要部署同一个项目,但需要做一些更改(特别是设置ActionMailer,它位于两个不同的目录中) 因此,我的第二个项目是一个开发副本,客户将在其上测试更改。批准后,更改将应用于生产服务器 我想创建两个分支,为某些文件添加一个异常并使用它。Git 合并分支合并时如何忽略某些文件?,git,Git,我有一个项目,它部署在heroku上。现在我需要部署同一个项目,但需要做一些更改(特别是设置ActionMailer,它位于两个不同的目录中) 因此,我的第二个项目是一个开发副本,客户将在其上测试更改。批准后,更改将应用于生产服务器 我想创建两个分支,为某些文件添加一个异常并使用它。 请告诉我怎么做。你不能这样做,因为这样做会彻底破坏完成合并的概念。Git需要知道/跟踪它合并到一个分支中的提交内容,而“部分”这样做显然会破坏它知道它已经做了什么的能力 我建议创建一个分支,并选择包含您希望您的客户
请告诉我怎么做。你不能这样做,因为这样做会彻底破坏完成合并的概念。Git需要知道/跟踪它合并到一个分支中的提交内容,而“部分”这样做显然会破坏它知道它已经做了什么的能力
我建议创建一个分支,并选择包含您希望您的客户机看到的更改的提交,而忽略其余的更改。理想情况下,您已经完成了良好的、逻辑的和包含的提交,因此此行动计划应该适合您。听起来您希望在不同的机器上有不同的配置设置 以下是我通常对配置文件执行的操作:
- 假设我想用一个名为
config.json
- 将
添加到myconfig.json
,这样它就不会包含在存储库中.gitignore
- 创建具有良好默认值的配置文件模板,例如
config.json.template
- 在
或其他适当位置添加说明,必须将README.md
复制到config.json.template
并进行适当修改config.json
- 保护我的代码,这样当应用程序启动时,如果
丢失了某个逻辑对象,就会收到通知config.json
- 提交修改后的
、修改后的文档和新的.gitignore
示例文件config.json.template
.gitignore
将阻止提交对配置文件的更改,因此您应该确保将其作为常规备份的一部分
配置是数据,就像数据库的内容一样。它应该与应用程序代码分开。我不确定我是否正确理解了您的问题,但就我从标题中可以理解的内容而言,我会1)提交非异常文件2)隐藏未提交的更改(异常文件)3)合并您对标记为“merge=ours”的某些文件/目录的.gittattributes有何看法?