Mein git wurde irgendwie durcheinander gebracht. Das Problem hat zwei Stufen:git nicht zu remote nach dem Erstellen eines neuen Zweigs schieben
1) ich einen Zweig erstellt perf_test genannt, einige Änderungen vorgenommen. Ich wollte die Änderungen in der neuen Filiale behalten, aber ich ging zum Master zurück, um zu prüfen, wie es war. Im Master habe ich festgestellt, dass die Änderungen von perf_test im Git-Status des Masters angezeigt wurden.
> git checkout -b perf_test
> touch /path/to/foo.txt
> git status
Uncommitted changes
modified /path/to/foo.txt
> git checkout master
> git status
Uncommitted changes
modified /path/to/foo.txt
Ich verstehe nicht, warum diese Änderungen im Master nach dem Wechsel zum Master angezeigt werden.
2) Ich öffnete dann alle Änderungen in perf_test und ging auf einige andere Änderungen in perf_test zu machen (dies war nicht beabsichtigt - ich dachte, dass ich in Meister war, aber in perf_test - aber das ist nicht wichtig)
> git checkout perf_test
> git rm /path/to/foo.txt
> git status
...clean...
> touch /path/to/bar.txt
> git commit -am "changed bar.txt"
...committed...
> git branch
...
*perf_test
...
> git checkout master
> git push origin master
Everything up-to-date
> git push heroku master
Everything up-to-date
Ich erwarte, dass die Änderung zu bar.txt zum Ursprung und zu heroku geschoben werden muss - aber beide berichten, dass sie aktuell sind, wenn ich weiß, dass sie nicht sind (die Änderungen wurden nie zu irgendeinem Fernsteuerungsschalter gedrängt).
ich die bar.txt Änderung meiner Fernbedienung drücken wollen - wie es zu tun?
Bekam es auf 1. Ja, es war Touch, nicht git touch - wird behoben. Und das hilft - was ich tun möchte ist, die Änderung in bar.txt von perf_test in den Master zu mischen, und dann den Master zu übernehmen und vom Master zu drücken. Ich denke es funktioniert, wie beschrieben. Vielen Dank! – Anand
OK, in diesem Fall fehlt nur noch 'git merge perf_test' nach der Zeile' git checkout master'. Sie müssen sich danach nicht mehr an den Master binden, da der Befehl 'git merge' den Merge-Commit für Sie erstellt (es sei denn, es liegt ein Merge-Konflikt vor). – kini
Danke, das war sehr nützlich! – Anand