2016-07-22 26 views
1

ich eine lokale Datei als unverändert durch die Aktualisierung des Index markiert, mit:Git - Können nicht nach dem Aktualisieren des Index fusionieren lokale Dateien zu übernehmen als unverändert

git update-index --assume-unchanged <file1> 

Obwohl file1 im Remote-Repository vorhanden ist. Nun, wenn ich versuche, einen Remote-Zweig fusionieren von:

git checkout myBranch 
git merge origin/myRemoteBranch 

ich eine Fehlermeldung erhalten, die sagt:

error: Your local changes to the following files would be overwritten by merge: 
     file1 
Please commit your changes or stash them before you can merge. 
Aborting 

Ich kann nicht begehen oder etwas verstauen, weil git status sagt „nichts zu begehen“, nach Markierung file1 als assume-unchanged. Wie kann ich den Remote-Zweig in den lokalen Zweig zusammenführen und die lokalen Änderungen unter file1 unverfolgt lassen?

Antwort

0

Wenn Sie andere Zweige in Ihre lokale Zweigstelle zusammenführen, werden Änderungen an anderen Zweigstellen (remote oder nicht) nicht vorgenommen.

Ich nehme an, dass Sie eine Datei haben, die bereits auf Remote-Zweig existiert und nicht möchte, dass Git weitere Änderungen an dieser Datei verfolgt. Wenn dies der Fall ist, sollten Sie .gitignore Datei erstellen und file1 dort hinzufügen. Gelesen: https://git-scm.com/docs/gitignore

+0

Das klingt wie eine Lösung, aber wenn ich '.gitignore' auf meinem Zweig aktualisiere und später, der schließlich in' Master' verschmilzt, will ich 'file1' auf Meister nicht ignoriert werden. Redigiert meine Frage für bessere Klarheit. – shubhamsingh