Heim > Backend-Entwicklung > Golang > An den Anbieter oder nicht an den Anbieter: Sollte der Ordner „vendor/' in „.gitignore' ignoriert werden?

An den Anbieter oder nicht an den Anbieter: Sollte der Ordner „vendor/' in „.gitignore' ignoriert werden?

DDD
Freigeben: 2024-11-03 15:08:30
Original
804 Leute haben es durchsucht

To Vendor or Not to Vendor: Should the `vendor/` Folder Be Ignored in `.gitignore`?

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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage