Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
git是否忽略基于远程的文件?_Git - Fatal编程技术网

git是否忽略基于远程的文件?

git是否忽略基于远程的文件?,git,Git,是否可以只为某些远程设备忽略git中的特定文件?e、 例如,我将AWS S3凭据(S3.yml)存储在Heroku上托管的应用程序的文件中,因此我需要将S3.yml检查到我的repo中,以便部署工作。但是,我也希望将源代码发布到GitHub,因此我明智地将s3.yml排除在回购协议之外。我可以想象它的工作原理是这样的 #.gitignore github:config/s3.yml 但是在git文档中找不到任何东西。这可能吗?还是我需要维持两个独立的回购协议 谢谢 如果您按原样发布该文件,它将

是否可以只为某些远程设备忽略git中的特定文件?e、 例如,我将AWS S3凭据(
S3.yml
)存储在Heroku上托管的应用程序的文件中,因此我需要将
S3.yml
检查到我的repo中,以便部署工作。但是,我也希望将源代码发布到GitHub,因此我明智地将
s3.yml
排除在回购协议之外。我可以想象它的工作原理是这样的

#.gitignore
github:config/s3.yml
但是在git文档中找不到任何东西。这可能吗?还是我需要维持两个独立的回购协议


谢谢

如果您按原样发布该文件,它将始终保留在repo中。即使您创建了一个分支并用git注册了该文件,人们也始终能够签出仍然有该文件的版本。我看不出有任何方法可以在使用单个存储库的同时,在远程服务器上保持单个文件的不可访问性


核心问题是,作为分布式SCM,每个存储库都有完整的修订历史记录。由于变更列表是基于其内容进行加密签名的,因此如果不将每个变更列表的哈希一直更改到添加文件时,则无法删除文件。这是git可以做到的,但在这一点上,您有两个独立的存储库,无法直接/轻松地推/拉。

Heroku有用于这类事情的配置变量。他们的观点似乎是s3信息不应该被检查到Git中。查看更多关于他们如何期待这种事情的信息

很好的链接--我以前没见过。它当然照顾的例子情况!我有点希望如此。我只是希望git的人能为我们工作——毕竟他们非常聪明:D