我正在尝试使用git来管理我的实时网站的部署.我遇到的问题是我有几个设置文件,当我推向生产时我不想更新
我正在做的是使用钩子或涂抹/清洁来改变文件内容,例如
<?php
define('DB_NAME', 'live');
define('DB_HOST', '127.0.0.1');
define('DB_USER', 'live_user');
define('DB_PASS', 'livePass');
Run Code Online (Sandbox Code Playgroud)
至
<?php
define('DB_NAME', 'local');
define('DB_HOST', '127.0.0.1');
define('DB_USER', 'local_user');
define('DB_PASS', 'localPass');
Run Code Online (Sandbox Code Playgroud)
有没有人可以通过这个过程跟我说话
我确实想知道使用post-receive hook和shell脚本来替换内容,但理想情况下我希望在运行git checkout之前更改repo中的内容-f在live copy之后没有更改
理想情况下,我希望在运行git checkout之前更改仓库中的内容-f在之后的实时副本中未更改
最接近的是一个内容过滤驱动程序将取代值在的git checkout.

(来自Scott Schacon关于Git属性的Pro Git书页:"关键字扩展"部分)
所以在你的情况下:在.gitattributes文件中声明的涂抹过滤器.
请参阅" git可以自动在空格和制表符之间切换吗? ",除非您使用sed替换local to live(如本示例所示)
| 归档时间: |
|
| 查看次数: |
5240 次 |
| 最近记录: |