Umgang mit dem Go-Vendor-Ordner in .gitignore
Problem
Ob der durch den Befehl „go dep“ generierte Anbieter/Ordner hinzugefügt werden soll oder nicht .gitignore war ein Diskussionsthema. Derzeit wird der Ordner ignoriert, was dazu führt, dass bei jeder Bereitstellung „dep secure“ aufgerufen wird.
Diskussion
Die Entscheidung, ob „vendor/“ ignoriert werden soll, hängt von den spezifischen Projektanforderungen und Entwicklungsbedürfnissen ab.
Gründe zum Ignorieren Vendor/:
- Die Go.gitignore-Vorlage von github/gitignore enthält kein Vendor/.
- Die Versionierung des Inhalts des Anbieters sperrt Abhängigkeiten, was angesichts von Bibliotheksaktualisierungen möglicherweise unerwünscht ist .
- Vendoring-Tools können sich im Laufe der Zeit weiterentwickeln (z. B. von Dep über Vgo bis hin zu Modulen), was möglicherweise ungültig wird nachverfolgte Abhängigkeiten.
Gründe, den Anbieter nicht zu ignorieren/:
- Das Ändern von Abhängigkeiten in der Versionskontrolle kann nützlich sein, um Änderungen zu verfolgen und Konflikte zu lösen.
- gitignore.io/api/go empfiehlt das Ignorieren Vendor/.
- Wenn Teammitglieder unterschiedliche lokale Umgebungen haben, kann der Vendor-Ordner die Konsistenz in den Abhängigkeitsversionen sicherstellen.
Empfohlene Ansätze
Wenn nicht in Spezifische Szenarien:
- Erwägen Sie, den Anbieter/gemäß zu ignorieren Vorlage von Github/Gitignore.
Wenn besondere Anforderungen bestehen:
- Verwenden Sie Virtualisierung oder Container, um Entwicklungsumgebungen zu standardisieren und so die Notwendigkeit lokaler Abhängigkeiten zu minimieren Management.
- Verwenden Sie einen hybriden Ansatz, indem Sie die Versionskontrolle des Anbieters/außerhalb behalten, aber Skripte für die lokale Version bereitstellen Generation.
- Erwägen Sie die Verwendung eines privaten Repositorys zur Verwaltung von Anbieterabhängigkeiten, um eine konsistente Nutzung durch alle Entwickler sicherzustellen.
- Erkunden Sie die Verwendung von Go-Modulen, die eine präzise Versionierung von Abhängigkeiten bieten und möglicherweise die Notwendigkeit einer Bereitstellung überflüssig machen.
Das obige ist der detaillierte Inhalt vonAn den Anbieter oder nicht an den Anbieter: Sollte der Ordner „vendor/' in „.gitignore' ignoriert werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!