Verbinden Sie zwei Zweige, um eine neue Verzweigung zu erstellen

8

Wir haben ein paar Filialen ...

  • master ist unser Dev-Zweig.
  • feature-newfeature ist eine neue Funktion.
  • feature-tempfeature ist eine neue Funktion, die unser Produktteam angefordert hat, bis ein neues Feature erstellt wurde. feature-newfeature wurde vor einiger Zeit gestartet und wurde noch nicht in master zusammengeführt (aber es gab andere Änderungen an master ).

Wir sind nun angewiesen worden, diese temporäre Funktion in die alle Änderungen von master zu bringen - also ein releasebarer Build - aber auch etwas von dem, an dem wir gearbeitet haben, in newfeature (wie sie es brauchen) sagen Sie "Sie können einige der Sachen wiederverwenden, die Sie bereits getan haben").

Wie wäre es am besten, dies zu tun? Ich habe feature-tempfeature vom Zweig master erstellt. feature-newfeature ist noch nicht fertig, und ich möchte es nicht zu master zusammenführen.

Ich möchte nicht nur feature-newfeature verwenden, weil wir parallel dazu weiterarbeiten wollen.

Wie würden Sie dieses Problem in Ihrer Entwicklungsumgebung lösen?

Vielen Dank!

    
Thomas Clayson 08.01.2013, 10:31
quelle

2 Antworten

12

-Verzweigungen sind nur Aliase für ein bestimmtes Commit. Daher können Sie mehrere Zweige haben, die auf dasselbe Commit verweisen. Sie könnten also einen neuen Zweig newBranch erstellen, der auf denselben Commit wie der Master verweist, und dann feature-tempfeature in newBranch zusammenführen. Der Effekt wäre der gleiche wie beim Mischen in Master, außer dass der Master unberührt bleibt.

    
Max Leske 08.01.2013, 10:36
quelle
3

Nach meinem Verständnis ist Ihr Szenario:

%Vor%

Ihr Problem: Sie benötigen tempf mit Änderungen von master sowie newf so

Lösung:

1) Speichern Sie Ihre ungesicherten Änderungen in tempf mit $ git stash

2) Master mit tempf zusammenführen und newf mit tablf zusammenführen, um die Änderungen von master und newf zu erhalten

3) Veröffentlichen Sie Ihre Änderungen mit $ git stash pop

Und wie @MaxLeske gesagt hat, sind Zweige nur Aliasnamen, sie dienen genau wie Zeiger auf einen Commit, sind aber nicht die Commits selbst.

    
uday 08.01.2013 10:47
quelle

Tags und Links