You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: book/03-git-branching/sections/branch-management.asc
+107-1Lines changed: 107 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -65,7 +65,6 @@ Wenn Sie den Branch wirklich löschen und diese Bearbeitungen aufgeben wollen, k
65
65
Wenn Sie keinen Commit- oder Branch-Namen als Argument angeben, zeigen Ihnen die oben beschriebenen Optionen `--merged` und `--no-merged` was jeweils in Ihren _current_-Branch gemergt oder nicht gemergt wurde.
66
66
67
67
Sie können immer ein zusätzliches Argument angeben, um nach dem Merge-Status in Bezug auf einen anderen Zweig zu fragen, ohne zu diesen anderen Zweig zuerst wechseln zu müssen. So wie im Beispiel unten: „Was ist nicht in den Branch `master` integriert?“
Benennen Sie keine Branches um, die noch von anderen Mitarbeitern verwendet werden.
82
+
Benennen Sie einen Branch wie master / main / mainline nicht um, ohne den Abschnitt „Ändern des Namens des Hauptzweigs“ gelesen zu haben.
83
+
----
84
+
85
+
Angenommen, Sie haben einen Branch mit dem Namen _bad-branch-name_ und möchten ihn in _corrected-branch-name_ ändern, während die gesamte Historie beibehalten wird.
86
+
Sie möchten auch den Branchnamen auf der Remote-Repository ändern (GitHub, GitLab, anderer Server).
87
+
Wie machen Sie das?
88
+
89
+
Benennen Sie den Branch lokal mit dem Befehl `git branch --move` um:
Jetzt werfen wir einen kurzen Blick darauf, wo wir aktuell stehen:
105
+
106
+
[source, console]
107
+
----
108
+
$ git branch --all
109
+
* corrected-branch-name
110
+
main
111
+
remotes/origin/bad-branch-name
112
+
remotes/origin/corrected-branch-name
113
+
remotes/origin/main
114
+
----
115
+
116
+
Beachten Sie, dass Sie sich auf dem Branch corrected-branch-name befinden.
117
+
Der korrigierte Branch ist auf dem Remote-Repository verfügbar.
118
+
Der fehlerhafte Branch ist jedoch auch auf dem Remote-Repository noch vorhanden.
119
+
Sie können den fehlerhaften Branch vom Remote-Repository löschen:
120
+
121
+
[source,console]
122
+
----
123
+
$ git push origin --delete bad-branch-name
124
+
----
125
+
126
+
Nun ist der falsche Branchname vollständig durch den korrigierten Branchnamen ersetzt.
127
+
128
+
===== Ändern des Master Branch Namens
129
+
130
+
[WARNING]
131
+
====
132
+
Wenn Sie den Namen eines Branches wie master/main/mainline/default ändern, werden die Integrationen, Dienste, Hilfsprogramme und Build/Release-Skripte, die Ihr Repository verwendet, höchstwahrscheinlich nicht mehr funktionieren.
133
+
Bevor Sie dies tun, sollten Sie dies gründlich mit Ihren Mitstreitern beraten.
134
+
Stellen Sie außerdem sicher, dass Sie Ihr Repo gründlich durchsuchen und alle Verweise auf den alten Branchnamen in Ihrem Code oder Ihren Skripten aktualisieren.
135
+
====
136
+
137
+
Benennen Sie Ihren lokalen _master_ Branch mit dem folgenden Befehl in _main_ um
138
+
139
+
[source,console]
140
+
----
141
+
$ git branch --move master main
142
+
----
143
+
144
+
Es gibt lokal keinen _master_ Branch mehr, da er in _main_ Branch umbenannt wurde.
145
+
146
+
Damit andere den neuen _main_ Branch sehen können, müssen Sie ihn auf das Remote-Repository pushen.
147
+
Dadurch wird der umbenannte Branch auf dem Remote Repository verfügbar.
148
+
149
+
[source,console]
150
+
----
151
+
$ git push --set-upstream origin main
152
+
----
153
+
154
+
Jetzt haben wir folgenden Zustand:
155
+
156
+
[source,console]
157
+
----
158
+
git branch --all
159
+
* main
160
+
remotes/origin/HEAD -> origin/master
161
+
remotes/origin/main
162
+
remotes/origin/master
163
+
----
164
+
165
+
Ihr lokaler _master_ Branch ist weg, da er durch den _main_ Branch ersetzt wurde.
166
+
Der Branch _main_ ist nun auch auf dem Remote-Repository verfügbar.
167
+
Aber im Remote-Repository existiert immer noch eine _master_ Branch.
168
+
Andere Mitstreiter verwenden weiterhin den Branch _master_ als Grundlage für ihre Arbeit, bis Sie weitere Änderungen vornehmen.
169
+
170
+
Jetzt haben Sie noch ein paar Aufgaben vor sich, um den Übergang abzuschließen:
171
+
* Alle Projekte, die von diesem abhängen, müssen ihren Code und/oder ihre Konfiguration aktualisieren.
172
+
* Aktualisieren Sie alle Test-Runner Konfigurationsdateien.
173
+
* Passen Sie Build- und Release-Skripte an.
174
+
* Leiten Sie die Einstellungen auf Ihrem Repo-Host für Dinge wie den Standardbranch des Repos, Zusammenführungsregeln und andere Dinge um, die mit den Branchnamen übereinstimmen.
175
+
* Aktualisieren Sie die Verweise auf den alten Branch in der Dokumentation.
176
+
* Schließen oder Mergen sie alle Pull-Anforderungen, die auf den alten Branch abzielen.
177
+
178
+
Nachdem Sie alle diese Aufgaben erledigt haben und sicher sind, dass der _main_ Branch genau wie der _master_ Branch ausgeführt wird, können Sie den _master_ Branch löschen:
0 commit comments