Habituellement, git ignore ne suivra plus ses propres fichiers locaux et le fichier distant sera supprimé après le push.
Mon exigence est que les fichiers locaux ne soient plus suivis et que les fichiers distants ne soient pas supprimés, sinon le code de l'entrepôt distant sera brisé. Pensez-y, c'est terrible que le fichier db.config soit supprimé. entrepôt.
Tout d'abord, le non-suivi local et la non-suppression du référentiel distant ne peuvent pas être obtenus en même temps, car
git
se présente sous la forme d'un instantané à chaque fois qu'il est soumis, plutôt que de soumettre plusieurs fichiers. , donc s'il n'est pas suivi localement, ce fichier sera supprimé par défaut lors de la soumission.git
在每次提交时都是以快照的形式,而不是说提交了几个文件,所以说如果本地不追踪了,那么提交时肯定会默认删掉这个文件。解决方案:这种问题很常见,跟
node_modules
要不要提交远端仓库等相似,你提到了一句话---“远端仓库的代码就坏了”,我需要纠正一下,并不是说git
上面远端仓库的代码拿下来都是可以直接run
的,百分之九十都是要改一些东西,配一些环境才可以work
的,就比如我刚刚说的node_modules
问题,没人会上传这么大的文件,只会上传一个package.json
文件,本地需要根据这个配置文件去配置本地信息。你这个
🎜Il en va de même pour votre fichierdb.config
文件也是一样的,你远端仓库上可以存一个db.config.default
或者db.config.sample
这样的文件,这里记录的是db.config
文件的所有默认配置,但是每个人本地开发环境需要将db.config.default
或者db.config.sample
复制一份,重命名为db.config
,然后将配置改为自己需要的,很有可能每个开发人员的本地配置都不一样,这时候把db.config
加入.gitignore
,一般来说.default
或者.sample
文件不需要改动提交的,除非是真的是整个项目需要修改才要提交db.config
. Vous pouvez stocker undb.config.default
ou undb.config.sample
dans votre télécommande. Warehouse >Un tel fichier, enregistré ici sont toutes les configurations par défaut du fichierdb.config
, mais l'environnement de développement local de chacun doit changerdb.config.default
oudb Copiez .config.sample
, renommez-le endb.config
, puis modifiez la configuration selon vos besoins. Il est très probable que la configuration locale de chaque développeur soit différente lors de l'ajout.db.config
à.gitignore
, d'une manière générale, les fichiers.default
ou.sample
n'ont pas besoin d'être modifiés et soumis. Oui, à moins que l'ensemble du projet ne doive vraiment être modifié, il doit être soumis🎜.Cela peut être fait selon vos besoins, mais ce n'est pas un problème. Le problème réside dans la gestion des fichiers de configuration.
Je fais habituellement ceci : différents fichiers de configuration pour différents environnements, config.xxx. Différents environnements se distinguent par des variables d'environnement ou des paramètres de ligne de commande ou des liens symboliques (au même nom, comme config, ce fichier n'est pas placé dans l'entrepôt), et les fichiers de configuration correspondants sont chargés.