Próbuję dodać niestandardową strategię scalania podobny do tego w tej kwestii: Git merge conflict to always take the newest filegit: Jak dodać niestandardową strategię scalania?
Uratowałem skrypt jako git-merge-latest.sh
i dodaje następujące linie do .git/config
:
[merge "latest"]
name = select latest file merge driver
driver = git-merge-latest.sh %O %A %B
jednak gdy uruchamiam git pull --strategy latest
, otrzymuję komunikat:
Could not find merge strategy 'latest'.
Available strategies are: octopus ours recursive resolve subtree.
próbowałam sprawdzanie git config merge.latest.driver
, która zwraca oczekiwany wynik. Zmieniłem także wartość driver
na true
, aby sprawdzić, czy nie było problemu ze znalezieniem skryptu.
Zdarza się to w dwóch różnych systemach z git 1.8.2.2 i 1.7.9.5. Co ja robię źle?
chcieć jednoznacznie stwierdzić, że dodanie strategię scalania jest sprawą modyfikacji 'git 'code - nie jest to coś, co można zrobić poprzez zmiany konfiguracji (przynajmniej obecnie) ... – twalberg
@twalberg - możesz całkiem łatwo podłączyć własną wtyczkę; jeśli masz 'git-merge-xyz' na swojej ścieżce, git uruchomi go, jeśli' git merge --strategy xyz'. W mojej odpowiedzi uczynię to bardziej zrozumiałym. –
Czy specyfikacja zapisywania pliku wykonywalnego strategii git merge jest udokumentowana w dowolnym miejscu? Czego powinienem oczekiwać na stdin i jaki powinien być wynik? –