windows - mystisk git-adfærd

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg har siden løst dette problem. Men jeg ved stadig ikke hvorfor, hvad jeg har arbejdet.


Vi har et svn repository for vores kode på arbejdspladsen. Jeg har et lokalt git-svn repository fordi jeg < 3 Git. :) Vi bruger Windows, så jeg bruger Cygwin. Jeg synes, at den seneste version i Cygwin er Git 1.7.0.4. På fredag ​​afgav jeg min kode uden problemer, gik hjem. Mandag morgen kom jeg tilbage og forsøgte at 'git svn rebase' fordi nogen havde begået kode i weekenden (overachievers).


Det begyndte normalt, og så pludselig besluttede det ikke for at finde bagagerummet. Desværre mistede jeg den eksakte fejlmeddelelse, men det råbte ikke om at finde/refs/fjernbetjeninger/trunk ... og jeg var meget bange. Heldigvis havde jeg ikke nogen ubestemt kode. Intet at tabe. Men hver gang jeg forsøgte at 'git svn rebase' efter det, ville det hænge for ALDRIG, og så ville jeg få følgende fejl:



  Kunne ikke bestemme opstrøms SVN-oplysninger fra arbejdstræhistorik



Jeg undersøgte det for en hel dag. Jeg forsøgte at ændre svn-fjernadressen fra https://xxx.xxx.xxx/xxx/xxx til https://xxx.xxx.xxx/xxx/xxx / så latterligt som det forekommer. Jeg gjorde så en 'git svn hente' ... og den hentede hele bagagerummet (alle 1682 forpligter). Men rebasen ville stadig ikke virke. Så jeg gav op for dagen og besluttede at næste dag ville jeg bare oprette et nyt depot og starte over (hvilket ville tage en hel dag). I morges gik jeg for at spørge spørgsmålet her, før jeg uheldigvis slette mit lager. Jeg stødte på dette: [2] [3]


git-svn rebase er gået forfærdeligt forkert


som ikke var nøjagtigt mit problem, men jeg besluttede at prøve 'git reset - hard trunk', fordi det var det, jeg ønskede. Og det fungerede. Alt er fint nu.


Imidlertid.


Hvorfor gjorde det det i første omgang? Jeg ændrede ikke noget så vidt jeg ved, da jeg ikke var på arbejde i weekenden. Hvilke slags ting ville have forårsaget fejlen? Jeg antager, at jeg fraværende gjorde noget forfærdeligt, men Jeg skal vide, hvad jeg ikke gør det igen. :)


Tak på forhånd.

Bedste reference


Denne fejl:


Unable to determine upstream SVN information from working tree history


Det lyder som om din nuværende git historie ikke var baseret på svn historien overhovedet, og dermed rebase kunne ikke finde en fælles forfader.


Ved at ændre webadressen tror jeg, at alle de begår har lidt anderledes forpligte meddelelser, og derfor forskellige sha1 hashes, og derfor matcher dine gamle forfædre ikke de nye, hvilket forårsager en rebase at mislykkes.


Hvad angår hvorfor trunk forsvandt/fejlet, ville det være ret svært at forstå, hvad der skete uden fejlmeddelelsen.