sage git, dass wir unsere Merge-Strategie für bestimmte Dateien verwenden sollen
Ich habe folgende Verzeichnisstruktur:
/.git
/.git/info/attributes
/MyProject
/MyProject/pom.xml
/MyProject/MyCode.java
Ich habe Branch Master und Bugfix. In beiden Zweigen wurden pom.xml und MyCode.java geändert. Ich möchte Änderungen von Bugfix auf Master nur für MyCode.java zusammenführen und die Master-Version der Datei pom.xml behalten.
Also habe ich "/.git/info/attributes" hinzugefügt, weil ich .gitattributes nicht für das Projekt festlegen möchte
$cat .git/info/attributes
pom.xml merge=ours
$git status
# On branch master
nothing to commit (working directory clean)
$git check-attr -a pom.xml
pom.xml: merge: ours
Zum Schluss zum Problem:
Wenn ich mache:
$git merge bugfix
Auto-merging MyProject/pom.xml
CONFLICT (content): Merge conflict in MyProject/pom.xml
Automatic merge failed; fix conflicts and then commit the result.
Git ignoriert die Attributeinstellung. Was vermisse ich hier?
Ich bevorzuge es, "keepMine.sh" nicht zu definierenPost
diesePost ist das, was ich brauche, aber ich ziehe es vor, nicht Datei für Datei zu gehen, wenn ich ein einfaches Muster habe
Vielen Dank!