首页 > 解决方案 > 在 git commit 但不是在本地隐藏或更改一行(或多行)的值

问题描述

我正在使用具有特定凭据(登录名、密码、服务器IP)的应用程序...

例如:文件/test.java:

  String RegDomain = "188.XXX.XXX.XXX";
  String RegPassword = "XXXXXXX";
  String RegUser = "XXXXX";

我的需要是当我提交和/或推送我的代码时,我想发现 test.java 如下:

  String RegDomain = "YOurDomaine";
  String RegPassword = "YourPassword";
  String RegUser = "UserName"; 

不更改本地存储库上的值。

标签: gitgithubgitlabgit-commitgit-push

解决方案


解决此问题的一种一般方法是:

  • 让代码从配置文件或环境中读取这些值
  • 提交配置文件的模板版本或设置环境的脚本 - 例如:一些单独的config.templateenv.template包含诸如“YourDomain”或“YourPassword”之类的值的文件......
  • 不要提交包含实际值的文件 - 例如:将配置文件名(config.jsonenv.sh或...)添加到您的仓库.gitignore

使用此设置,在git clone您的项目的第一个之后,开发人员必须运行额外的设置步骤来创建运行程序的环境。


推荐阅读