我有一个Laravel仓库,我正在研究这是一个带有标准.gitignore文件的git仓库,我稍微修改了这些文件以满足项目的需要。
每次,我将repo推送到github,生产所需的所有文件都会更新,但忽略的文件不会。如果我想移动到另一台机器并克隆项目,这会出现问题,因为我需要的第一台机器上的某些文件尚未发布这些文件。
理想情况下,我想维护一个忽略所有文件的回购,但也要回收所有文件。
这可以通过git还是其他最佳实践来实现?
答案 0 :(得分:0)
目前还不清楚为什么需要这样做,但可以做到。你可以有两个分支,一个分支包含.gitignore中的文件
进行设置:
git add remote all-files <URL_TO_REMOTE>
之后,在主分支上进行更改并想要更新所有文件远程:
git push all-files master
使用此设置,master将只包含不在.gitignore中的文件,而all-files将包含所有文件,而不管[name='ORDER_PNAME[]']
如果您想将这些分支机构分成两个不同的存储库,就像创建新的存储库一样简单,使用[ ]
将其设置为新的远程控制器,并在推送全部存储库时使用console.log(value)
文件分支。
答案 1 :(得分:0)
您不应该在存储库中放置的唯一文件是包含敏感信息的配置文件,在不同计算机上可能不同的设置(例如路径)或可以更改的设置,而无需在代码(例如,页面上显示的项目数)。
此类配置文件的标准做法(假设其名称为config.txt
)是创建包含默认值的文件版本(对于密码等敏感信息为空)以及解释可能值的注释可配置参数,它们的含义aso
将副本命名为config.txt.dist
,并在将config.txt
添加到.gitignore
时将其放入存储库。
当在新机器上检查项目时,他/她会将config.txt.dist
复制为config.txt
,填写其中的相应设置并准备就绪。
程序员必须注意保持本地config.txt
与config.txt.dist
同步。一些框架(例如Symfony)提供了从config.txt
创建config.txt.dist
的工具,并在项目准备部署时更新它。
将config.txt
替换为适合您项目的名称以及用于构建项目的语言。