Setup and Config
Getting and Creating Projects
Basic Snapshotting
Branching and Merging
Sharing and Updating Projects
Inspection and Comparison
Patching
Debugging
External Systems
Server Admin
Guides
- gitattributes
- Command-line interface conventions
- Everyday Git
- Frequently Asked Questions (FAQ)
- Glossary
- Hooks
- gitignore
- gitmodules
- Revisions
- Submodules
- Tutorial
- Workflows
- All guides...
Administration
Plumbing Commands
- 2.53.0 → 2.54.0 no changes
-
2.52.0
2025-11-17
- 2.51.2 no changes
-
2.51.1
2025-10-15
- 2.50.1 → 2.51.0 no changes
-
2.50.0
2025-06-16
- 2.45.1 → 2.49.1 no changes
-
2.45.0
2024-04-29
- 2.43.1 → 2.44.4 no changes
-
2.43.0
2023-11-20
- 2.41.1 → 2.42.4 no changes
-
2.41.0
2023-06-01
- 2.38.3 → 2.40.4 no changes
-
2.38.2
2022-12-11
- 2.38.1 no changes
-
2.38.0
2022-10-02
- 2.37.1 → 2.37.7 no changes
-
2.37.0
2022-06-27
- 2.31.1 → 2.36.6 no changes
-
2.31.0
2021-03-15
- 2.22.1 → 2.30.9 no changes
-
2.22.0
2019-06-07
- 2.20.1 → 2.21.4 no changes
-
2.20.0
2018-12-09
- 2.12.5 → 2.19.6 no changes
-
2.11.4
2017-09-22
- 2.2.3 → 2.10.5 no changes
-
2.1.4
2014-12-17
-
2.0.5
2014-12-17
BESKRIVNING
Använd git mergetool för att köra ett av flera merge-verktyg för att lösa merge-konflikter. Det körs vanligtvis efter git merge.
Om en eller flera <fil>-parametrar anges, kommer merge-verktygsprogrammet att köras för att lösa skillnader i varje fil (och hoppa över de utan konflikter). Att ange en katalog inkluderar alla olösta filer i den sökvägen. Om inga <fil>-namn anges, kommer git mergetool att köra merge-verktygsprogrammet på varje fil med merge-konflikter.
ALTERNATIV
-
-t<verktyg> -
--tool=<verktyg> -
Använd det sammanslagningsupplösningsprogram som anges av <verktyg>. Giltiga värden inkluderar
emerge,gvimdiff,kdiff3,meld,vimdiffochtortoisemerge. Körgitmergetool--tool-helpför listan över giltiga <verktyg>-inställningar.Om ett program för sammanslagningslösning inte anges, kommer
gitmergetoolatt använda konfigurationsvariabelnmerge.tool. Om konfigurationsvariabelnmerge.toolinte är satt, kommergitmergetoolatt välja en lämplig standardinställning.Du kan explicit ange en fullständig sökväg till verktyget genom att ställa in konfigurationsvariabeln
mergetool.<tool>.path. Du kan till exempel konfigurera den absoluta sökvägen till kdiff3 genom att ställa inmergetool.kdiff3.path. Annars antargitmergetoolatt verktyget är tillgängligt i$PATH.I stället för att köra ett av de kända sammanslagningsverktygsprogrammen kan
gitmergetoolanpassas för att köra ett alternativt program genom att ange kommandoraden som ska anropas i en konfigurationsvariabelmergetool.<verktyg>.cmd.När
gitmergetoolanropas med detta verktyg (antingen genom alternativet-teller--tooleller konfigurationsvariabelnmerge.tool), kommer den konfigurerade kommandoraden att anropas medBASEsatt till namnet på en temporär fil som innehåller den gemensamma basen för sammanslagningen, om tillgänglig;LOCALsatt till namnet på en temporär fil som innehåller innehållet i filen på den aktuella grenen;REMOTEsatt till namnet på en temporär fil som innehåller innehållet i filen som ska sammanfogas, ochMERGEDsatt till namnet på den fil som sammanslagningsverktyget ska skriva resultatet av sammanslagningslösningen till.Om det anpassade sammanslagningsverktyget korrekt indikerar att en sammanslagningslösning har lyckats med sin avslutningskod, kan konfigurationsvariabeln
mergetool.<verktyg>.trustExitCodesättas tilltrue. Annars kommergitmergetoolatt uppmana användaren att indikera att lösningen har lyckats efter att det anpassade verktyget har avslutats. -
--tool-help -
Skriv ut en lista över sammanslagningsverktyg som kan användas med
--tool. -
-y -
--no-prompt -
Fråga inte före varje anrop av sammanslagningsprogrammet. Detta är standardinställningen om sammanslagningsprogrammet explicit anges med alternativet
--tooleller med konfigurationsvariabelnmerge.tool. -
--prompt -
Fråga före varje anrop av sammanslagningsprogrammet för att ge användaren en chans att hoppa över sökvägen.
-
-g -
--gui -
När
git-mergetoolanropas med alternativet-geller--guikommer standardverktyget för sammanslagning att läsas från den konfigurerade variabelnmerge.guitooli stället förmerge.tool. Ommerge.guitoolinte är inställt används verktyget som konfigurerats undermerge.tool. Detta kan väljas automatiskt med hjälp av konfigurationsvariabelnmergetool.guiDefault. -
--no-gui -
Det åsidosätter en tidigare
-g- eller--gui-inställning ellermergetool.guiDefault-konfiguration och läser standardverktyget för sammanslagning från den konfigurerade variabelnmerge.tool. -
-O<ordingsfil> -
Bearbeta filer i den ordning som anges i <ordingsfil>, som har ett glob-mönster per rad. Detta åsidosätter konfigurationsvariabeln
diff.orderFile(se git-config[1]). För att avbrytadiff.orderFile, använd-O/dev/null.
KONFIGURATION
Allt under den här raden i det här avsnittet är selektivt inkluderat från dokumentationen git-config[1]. Innehållet är detsamma som det som finns där:
-
merge.tool -
Åsidosätt sökvägen för det givna verktyget. Detta är användbart om ditt verktyg inte finns i
$PATH. -
merge.tool -
När
gitmergetoolanropas med detta verktyg (antingen genom alternativet-teller--tooleller konfigurationsvariabelnmerge.tool), kommer den konfigurerade kommandoraden att anropas medBASEsatt till namnet på en temporär fil som innehåller den gemensamma basen för sammanslagningen, om tillgänglig;LOCALsatt till namnet på en temporär fil som innehåller innehållet i filen på den aktuella grenen;REMOTEsatt till namnet på en temporär fil som innehåller innehållet i filen som ska sammanfogas, ochMERGEDsatt till namnet på den fil som sammanslagningsverktyget ska skriva resultatet av sammanslagningslösningen till. -
mergetool.<verktyg>.hideResolved -
Tillåter användaren att åsidosätta det globala värdet
mergetool.hideResolvedför ett specifikt verktyg. Semergetool.hideResolvedför en fullständig beskrivning. -
diff.<förare>.trustExitCode -
För ett anpassat sammanslagningskommando anges om avslutningskoden för sammanslagningskommandot kan användas för att avgöra om sammanslagningen lyckades. Om detta inte är inställt på sant kontrolleras tidsstämpeln för sammanslagningsmålfilen och sammanslagningen antas ha lyckats om filen har uppdaterats. Annars uppmanas användaren att ange att sammanslagningen lyckades.
-
mergetool.meld.hasOutput -
Äldre versioner av
meldstöder inte alternativet--output. Git kommer att försöka upptäcka ommeldstöder--outputgenom att inspektera utdata frånmeld--help. Ommergetool.meld.hasOutputkonfigureras hoppar Git över kontrollen och använder det konfigurerade värdet i stället. Ommergetool.meld.hasOutputställs in påtruefår Git att ovillkorligen använda alternativet--output, ochfalseundviker att använda--output. -
mergetool.meld.useAutoMerge -
När
--auto-mergeär angivet kommer meld att sammanfoga alla icke-konfliktande delar automatiskt, markera de motstridiga delarna och vänta på användarens beslut. Ommergetool.meld.useAutoMergesätts tilltrueinnebär det att Git villkorslöst använder alternativet--auto-mergemedmeld. Om detta värde sätts tillautoidentifierar Git om--auto-mergestöds och kommer endast att använda--auto-mergenär det är tillgängligt. Värdetfalseundviker att använda--auto-mergehelt och hållet, och är standardvärdet. -
mergetool.<variant>.layout -
Konfigurera layouten för delade fönster för vimdiffs <variant>, vilket är någon av
vimdiff,nvimdiff,gvimdiff. Vid start avgitmergetoolmed--tool=<variant> (eller utan--toolommerge.toolär konfigurerad som <variant>), kommer Git att konsulteramergetool.<variant>.layoutför att bestämma verktygets layout. Om den variantspecifika konfigurationen inte är tillgänglig användsvimdiffsom reserv. Om inte heller den är tillgänglig används en standardlayout med 4 fönster. För att konfigurera layouten, se BAKÄNDA-SPECIFIKA TIPS sektion. -
mergetool.hideResolved -
Under en sammanslagning kommer Git automatiskt att lösa så många konflikter som möjligt och skriva
$MERGED-filen som innehåller konfliktmarkörer runt eventuella konflikter som den inte kan lösa;$LOCALoch$REMOTEär normalt versionerna av filen från före Gits konfliktlösning. Denna flagga gör att$LOCALoch$REMOTEskrivs över så att endast de olösta konflikterna presenteras för sammanslagningsverktyget. Kan konfigureras per verktyg via konfigurationsvariabelnmergetool.<verktyg>.hideResolved. Standardvärdet ärfalse. -
mergetool.keepBackup -
Efter att en sammanslagning har utförts kan originalfilen med konfliktmarkörer sparas som en fil med filändelsen
.orig. Om variabeln är satt tillfalsebevaras inte filen. Standardvärdet ärsant(dvs. behåll säkerhetskopiorna). -
mergetool.keepTemporaries -
När ett anpassat sammanslagningsverktyg anropas använder Git en uppsättning temporära filer för att skicka till verktyget. Om verktyget returnerar ett fel och denna variabel är satt till
true, kommer dessa temporära filer att bevaras; annars kommer de att tas bort efter att verktyget har avslutats. Standardvärdet ärfalse. -
mergetool.writeToTemp -
Git skriver som standard temporära
BASE-,LOCAL- ochREMOTE-versioner av motstridiga filer i arbetsträdet. Git kommer att försöka använda en temporär katalog för dessa filer närtrueär satt. Standardvärdet ärfalse. -
mergetool.prompt -
Fråga före varje anrop av sammanslagningsprogrammet för att ge användaren en chans att hoppa över sökvägen.
-
mergetool.guiDefault -
Sätt
trueför att användamerge.guitoolsom standard (motsvarande att ange argumentet--gui), ellerautoför att väljamerge.guitoolellermerge.toolberoende på förekomsten av ettDISPLAYmiljövariabelvärde. Standardvärdet ärfalse, där argumentet--guimåste anges explicit för attmerge.guitoolska kunna användas.
TILLFÄLLIGA FILER
git mergetool skapar *.orig säkerhetskopior när de löser sammanslagningar. Dessa kan säkert tas bort när en fil har sammanfogats och dess git mergetool-session har slutförts.
Om konfigurationsvariabeln mergetool.keepBackup sätts till false tar git mergetool automatiskt bort säkerhetskopiorna när filerna har sammanfogats.
GIT
En del av git[1]-sviten