git check een enkel bestand uit een andere branch uit en plaats het in een andere map

Ik probeer een enkel bestand van een andere branch te git checkout.

Alles is in orde, maar het plaatst het bestand in dezelfde directorystructuur van de branch die ik aan het uitchecken ben.

Er is een manier om een andere bestemmingsmap op te geven tijdens git checkout?

Dit is wat ik deed:

git checkout other_branch -- path/to/file/xxx

git-status:

new file:             path/to/file/xxx

dit is het resultaat dat ik nodig heb (zet xxx in de hoofdmap van mijn werkende tak):

new file:             ./xxx

Antwoord 1, autoriteit 100%

Je hebt 2 opties

  1. chain 2 commando’s, git checkout other_branch -- file.txt && git mv file.txt folder/file.txt
  2. of je kunt worktree
  3. gebruiken


Antwoord 2, autoriteit 16%

Je zou het bestand gewoon moeten kunnen verplaatsen, b.v. in Linux, vanuit je werkmap:

mv path/to/file/xxx ./xxx

U zou dan de wijzigingen moeten uitvoeren die het gevolg zijn van de system move-opdracht. Je kunt ook proberen git mvte gebruiken:

git mv path/to/file/xxx ./xxx

Het gebruik van git mvzou ook het staging-werk voor je moeten regelen.

Other episodes