GIT

Software screenshot:
GIT
Podrobnosti Software:
Verze: 2.16.0 Aktualizováno
Datum uploadu: 20 Jan 18
Vývojka: Junio C Hamano
Licence: Volný
Popularita: 64

Rating: 3.0/5 (Total Votes: 1)

Git je jedním z nejrozšířenějších systémů distribuovaných verzí, které vývojáři po celém světě popisují jako službu VCS číslo jedna. Spouští se pouze z terminálu, ale k dispozici je několik front-endů.

Jedná se o bezplatnou a otevřenou verzi řídícího systému pro správu verzí, který dokáže zpracovat jak velké, tak malé projekty s maximální efektivitou a rychlostí. Program lze snadno popsat jako malý, rychlý a distribuovaný.


Možnosti příkazového řádku

Program je dodáván s hrstkou příkazů, které si každý může snadno vzpomenout. Všechny operace jsou prováděny lokálně a byly navrženy tak, aby fungovaly na jádře Linuxu.

Zahrnuté příkazy jsou add, bisect, branch, checkout, klonovat, commit, diff, fetch, grep, init, log, merge, mv, pull, push, rebase, reset, rm, show, status a tag. Můžete snadno zjistit, co dělá každý příkaz spuštěním příkazu git -help z terminálového okna.


Funkce na první pohled

Pokud používáte Git, uživatelé budou moci přidávat soubory, větví nebo cesty k pokladnám, repozitáře klonů, vytvářet prázdné repozitáře Git, připojovat se k několika vývojovým historiím, zobrazovat stav pracovního stromu, zaznamenávat změny, vytvářet, odstranit větve.

Aplikace kromě toho umožňuje uživatelům zobrazit změny mezi závazky a pracovními stromy, tisknout řádky, které odpovídají vzoru, protokolům o prohlíženích událostí, stažením odkazů a objektům, přejmenovat nebo přesouvat soubory, symbolické odkazy a adresáře, aktualizovat vzdálené odkazy a odstraňovat soubory z pracovního stromu.


Existují různé grafické přední strany

I když je to pouze software příkazového řádku, jsou k dispozici různé grafické uživatelské rozhraní (GUI), včetně git-cola, SmartGit, GitEye, giggle a gitg. Projekty překonávají nástroje SCM (Software Configuration Management), jako jsou CVS, Subversion, ClearCase a Perforce, tím, že mají levné místní větvení, více pracovních toků a pohodlné oblasti stagingu.


Dolní řádek

Shrnutí, Git je bezplatný systém řízení verzí, který nabízí bleskový výkon, snadno se učí a má velmi malou stopu. S Git můžete provést bezkontaktní přepínání kontextu, kódové řádky založené na rolích, workflow založené na vlastnostech a experimenty na jedno použití.

Co je nové p>

  • Pomocná funkce pro čtení jediné celé linky do strbuf za určitých podmínek, která byla opravena, mylně vyvolala chybu OOM na EOF.
  • Kromě "cc: # cruft", "cc: a@dd.re.ss # cruft" byl vyučen "git send-email" jako platný způsob, jak to říci, že musí poslat také uhlíkovou kopii v sekci trailer.
  • Opravte regresi na "gitk --bisect" nedávnou aktualizací.
  • Na rozdíl od & quot; git commit-tree & lt; soubor "," git commit-tree -F file " neposkytl obsah souboru doslovně a místo toho dokončil neúplný řádek na konci, pokud existuje. Ten byl aktualizován tak, aby odpovídal chování prvního.
  • "git archiv", obzvláště při použití s ​​pathspec, uložil prázdný adresář na svém výstupu, i když Git sám nikdy nečiní. To bylo opraveno.
  • Odolnost proti chybám v rozhraní API, při níž dochází ik náhlým upozorněním od GCC.
  • "git gc" se snaží zabránit spuštěním dvou instancí současně čtením a psaním souboru pid / host z a do souboru zámku; při čtení byl použit nesprávný formát fscanf (), který byl opraven.
  • Testovací linter byl poučen, že se nám nelíbí "echo -e".
  • Kód cmp.std.c nitpick
  • "git popsat --match" se naučil vzít více vzorků v sérii v2.13, ale tato funkce ignorovala vzory po prvním a vůbec nefungovala. To bylo opraveno.
  • "git cat-file - textconv" začala segfaulting nedávno, která byla opravena.
  • Vestavěný vzor pro detekci "záhlaví funkce" pro HTML neodpovídá .. prvky bez jakýchkoli atributů, které byly opraveny.
  • "git mailinfo" byl uvolněný v dekódování citovaných tisknutelných a vyrobených odpadků, když dvě písmena po rovnocenném znaménku nejsou hexadecimální. To bylo opraveno.
  • Dokumentace pro "-X" pro sloučení byla napsána zavádějící a naznačovala, že "-s jejich" existuje, což není.
  • Napište název našeho systému jako "Git" ve výstupu ze skriptu request-pull.
  • Opravuje několik otázek týkajících se přístupu k paměti, které identifikoval valgrind.
  • Backports morální ekvivalent 2015 fixuje na emulaci hlasování z proudu gnulib k opravě příležitostných zlomů na HPE NonStop.
  • Ve formátu "- format = ..." volba výrazu "git for-each-ref" příkaz (a jeho přátelé, tj. způsob zápisu "git větve / tagu"), "% (atom:)" (např. "% (refname:)", "% (body:)" se používá k chybě, místo toho je zacházet jako s dvojbodkou a prázdným řetězcem, který následuje.
  • Uživatelé s "color.ui = always" v jejich konfiguraci byly rozděleny nedávnou změnou, která učinila příkazy k vodovodům, aby je věnovali pozornost jako náplast vytvořená interně "git add -p" byly zbarveny (heh) a staly se nepoužitelnými. To bylo opraveno.
  • "větve GIT -M a b" zatímco na větvi, která je zcela nespojena s větvemi nebo větvemi b, je nesprávná, když se používá více pracovních míst. To bylo opraveno.
  • "git fast-export" s volbou -M / -C vydána "kopie" instrukce na cestu, která je současně modifikována, což bylo nesprávné.
  • Příkaz kontrolního bodu "git fast-import" nezpracovala aktualizace odkazů a značek, pokud nebyl vytvořen alespoň jeden objekt od posledního kontrolního bodu, který byl opraven, protože se to může stát bez vytvoření nového objektu.
  • Skripty, které řídí TravisCI, byly reorganizovány a poté byla provedena optimalizace, aby se zabránilo výdajovým cyklům na pobočce, jejíž tip je označen.
  • "git fetch:" umožňuje zadání názvu objektu na straně, když druhá strana přijme takovou žádost od verze Git v2.5, ale dokumentace zůstala prázdná.
  • Byla opravena regrese ve verzi 2.11, která způsobila, že kód přečte seznam úložišť alternativních objektů, překročení konce řetězce.

Co je nového ve verzi 2.15.1:

  • Pomocná funkce pro čtení jediné celé linky do strbuf za určitých podmínek, která byla opravena, mylně vyvolala chybu OOM na EOF.
  • Kromě "cc: # cruft", "cc: a@dd.re.ss # cruft" byl vyučen "git send-email" jako platný způsob, jak to říci, že musí poslat také uhlíkovou kopii v sekci trailer.
  • Opravte regresi na "gitk --bisect" nedávnou aktualizací.
  • Na rozdíl od & quot; git commit-tree & lt; soubor "," git commit-tree -F file " neposkytl obsah souboru doslovně a místo toho dokončil neúplný řádek na konci, pokud existuje. Ten byl aktualizován tak, aby odpovídal chování prvního.
  • "git archiv", obzvláště při použití s ​​pathspec, uložil prázdný adresář na svém výstupu, i když Git sám nikdy nečiní. To bylo opraveno.
  • Odolnost proti chybám v rozhraní API, při níž dochází ik náhlým upozorněním od GCC.
  • "git gc" se snaží zabránit spuštěním dvou instancí současně čtením a psaním souboru pid / host z a do souboru zámku; při čtení byl použit nesprávný formát fscanf (), který byl opraven.
  • Testovací linter byl poučen, že se nám nelíbí "echo -e".
  • Kód cmp.std.c nitpick
  • "git popsat --match" se naučil vzít více vzorků v sérii v2.13, ale tato funkce ignorovala vzory po prvním a vůbec nefungovala. To bylo opraveno.
  • "git cat-file - textconv" začala segfaulting nedávno, která byla opravena.
  • Vestavěný vzor pro detekci "záhlaví funkce" pro HTML neodpovídá .. prvky bez jakýchkoli atributů, které byly opraveny.
  • "git mailinfo" byl uvolněný v dekódování citovaných tisknutelných a vyrobených odpadků, když dvě písmena po rovnocenném znaménku nejsou hexadecimální. To bylo opraveno.
  • Dokumentace pro "-X" pro sloučení byla napsána zavádějící a naznačovala, že "-s jejich" existuje, což není.
  • Napište název našeho systému jako "Git" ve výstupu ze skriptu request-pull.
  • Opravuje několik otázek týkajících se přístupu k paměti, které identifikoval valgrind.
  • Backports morální ekvivalent 2015 fixuje na emulaci hlasování z proudu gnulib k opravě příležitostných zlomů na HPE NonStop.
  • Ve formátu "- format = ..." volba výrazu "git for-each-ref" příkaz (a jeho přátelé, tj. způsob zápisu "git větve / tagu"), "% (atom:)" (např. "% (refname:)", "% (body:)" se používá k chybě, místo toho je zacházet jako s dvojbodkou a prázdným řetězcem, který následuje.
  • Uživatelé s "color.ui = always" v jejich konfiguraci byly rozděleny nedávnou změnou, která učinila příkazy k vodovodům, aby je věnovali pozornost jako náplast vytvořená interně "git add -p" byly zbarveny (heh) a staly se nepoužitelnými. To bylo opraveno.
  • "větve GIT -M a b" zatímco na větvi, která je zcela nespojena s větvemi nebo větvemi b, je nesprávná, když se používá více pracovních míst. To bylo opraveno.
  • "git fast-export" s volbou -M / -C vydána "kopie" instrukce na cestu, která je současně modifikována, což bylo nesprávné.
  • Příkaz kontrolního bodu "git fast-import" nezpracovala aktualizace odkazů a značek, pokud nebyl vytvořen alespoň jeden objekt od posledního kontrolního bodu, který byl opraven, protože se to může stát bez vytvoření nového objektu.
  • Skripty, které řídí TravisCI, byly reorganizovány a poté byla provedena optimalizace, aby se zabránilo výdajovým cyklům na pobočce, jejíž tip je označen.
  • "git fetch:" umožňuje zadání názvu objektu na straně, když druhá strana přijme takovou žádost od verze Git v2.5, ale dokumentace zůstala prázdná.
  • Byla opravena regrese ve verzi 2.11, která způsobila, že kód přečte seznam úložišť alternativních objektů, překročení konce řetězce.

Co je nového ve verzi 2.15.0:

  • Pomocná funkce pro čtení jediné celé linky do strbuf za určitých podmínek, která byla opravena, mylně vyvolala chybu OOM na EOF.
  • Kromě "cc: # cruft", "cc: a@dd.re.ss # cruft" byl vyučen "git send-email" jako platný způsob, jak to říci, že musí poslat také uhlíkovou kopii v sekci trailer.
  • Opravte regresi na "gitk --bisect" nedávnou aktualizací.
  • Na rozdíl od & quot; git commit-tree & lt; soubor "," git commit-tree -F file " neposkytl obsah souboru doslovně a místo toho dokončil neúplný řádek na konci, pokud existuje. Ten byl aktualizován tak, aby odpovídal chování prvního.
  • "git archiv", obzvláště při použití s ​​pathspec, uložil prázdný adresář na svém výstupu, i když Git sám nikdy nečiní. To bylo opraveno.
  • Odolnost proti chybám v rozhraní API, při níž dochází ik náhlým upozorněním od GCC.
  • "git gc" se snaží zabránit spuštěním dvou instancí současně čtením a psaním souboru pid / host z a do souboru zámku; při čtení byl použit nesprávný formát fscanf (), který byl opraven.
  • Testovací linter byl poučen, že se nám nelíbí "echo -e".
  • Kód cmp.std.c nitpick
  • "git popsat --match" se naučil vzít více vzorků v sérii v2.13, ale tato funkce ignorovala vzory po prvním a vůbec nefungovala. To bylo opraveno.
  • "git cat-file - textconv" začala segfaulting nedávno, která byla opravena.
  • Vestavěný vzor pro detekci "záhlaví funkce" pro HTML neodpovídá .. prvky bez jakýchkoli atributů, které byly opraveny.
  • "git mailinfo" byl uvolněný v dekódování citovaných tisknutelných a vyrobených odpadků, když dvě písmena po rovnocenném znaménku nejsou hexadecimální. To bylo opraveno.
  • Dokumentace pro "-X" pro sloučení byla napsána zavádějící a naznačovala, že "-s jejich" existuje, což není.
  • Napište název našeho systému jako "Git" ve výstupu ze skriptu request-pull.
  • Opravuje několik otázek týkajících se přístupu k paměti, které identifikoval valgrind.
  • Backports morální ekvivalent 2015 fixuje na emulaci hlasování z proudu gnulib k opravě příležitostných zlomů na HPE NonStop.
  • Ve formátu "- format = ..." volba výrazu "git for-each-ref" příkaz (a jeho přátelé, tj. způsob zápisu "git větve / tagu"), "% (atom:)" (např. "% (refname:)", "% (body:)" se používá k chybě, místo toho je zacházet jako s dvojbodkou a prázdným řetězcem, který následuje.
  • Uživatelé s "color.ui = always" v jejich konfiguraci byly rozděleny nedávnou změnou, která učinila příkazy k vodovodům, aby je věnovali pozornost jako náplast vytvořená interně "git add -p" byly zbarveny (heh) a staly se nepoužitelnými. To bylo opraveno.
  • "větve GIT -M a b" zatímco na větvi, která je zcela nespojena s větvemi nebo větvemi b, je nesprávná, když se používá více pracovních míst. To bylo opraveno.
  • "git fast-export" s volbou -M / -C vydána "kopie" instrukce na cestu, která je současně modifikována, což bylo nesprávné.
  • Příkaz kontrolního bodu "git fast-import" nezpracovala aktualizace odkazů a značek, pokud nebyl vytvořen alespoň jeden objekt od posledního kontrolního bodu, který byl opraven, protože se to může stát bez vytvoření nového objektu.
  • Skripty, které řídí TravisCI, byly reorganizovány a poté byla provedena optimalizace, aby se zabránilo výdajovým cyklům na pobočce, jejíž tip je označen.
  • "git fetch:" umožňuje zadání názvu objektu na straně, když druhá strana přijme takovou žádost od verze Git v2.5, ale dokumentace zůstala prázdná.
  • Byla opravena regrese ve verzi 2.11, která způsobila, že kód přečte seznam úložišť alternativních objektů, překročení konce řetězce.

Co je nového ve verzi 2.14.1:

  • ssh: // ... &&; Adresa URL od Git v2.7.6

Co je nového ve verzi 2.9.3:

  • * Funkce pomocníka, která zachycuje obsah objektu commit a najde jeho řádek, nezamítá přední prázdné řádky, jak se běžně dělají jinými kodérmi. Zrušte ignorování předních prázdných řádků.
  • Git neví, jaký by měl být obsah v indexu pro cestu přidanou s "git add -N", takže "git grep -cached" by neměl ukazovat hity (nebo ukázat nedostatek hity, s -L ) v takové cestě, ale tato logika se nevztahuje na "git grep", tj. hledání v pracovních stromových souborech. Ale udělali jsme to omylem, což bylo opraveno.
  • "git rebase -i --autostash" neobnovila automatickou změnu změny, když byla operace přerušena.
  • "git commit -amend --allow-empty-message -S" pro potvrzení bez jakéhokoli těla zprávy by mohlo chybně identifikovat, kde končí záhlaví objektu commit.
  • Více vertikálních aktualizací pro vytyčování řetězců, u kterých se očekává, že doslova zadá koncový uživatel v písmu s pevnou šířkou.
  • Po dlouhou dobu jsme udělali komentář v kódu, který říká, že náš barevný výstup bude pracovat pouze tehdy, když použijeme fprintf / fputs na Windows, což už není v posledních letech
  • "gc.autoPackLimit", pokud je nastavena na hodnotu 1, by neměla spouštět přebalování, pokud je pouze jedno balení, ale kód se spočítává špatně a provádí tak.
  • Jedna část "git am" měla pomocnou pomocnou funkci, která volala věci zvenčí "jeho", na rozdíl od volání toho, co máme "naše", které nebylo genderově neutrální a také nekonzistentní se zbytkem systému, kde vnější věci se nazývají "jejich" v rozporu s "naším".
  • Testovací rámec se naučil novému pomocníkovi test_match_signal, aby zkontroloval ukončení kódu kvůli zabití očekávaným signálem.
  • "git vinu -M" zmeškal jediný řádek, který byl přesunut do souboru.
  • Opravte nedávno zavedené kódové cesty, které se podílejí na paralelních operacích submodulů, které se kvůli čtení příliš brzy zříkaly a mohly by ztratit CPU při pokusu o psaní pod podmínkou rohu.
  • "git grep -i" se naučil skládat případ v lokálním prostředí, který není v ascii správně.
  • Test, který bezpodmínečně používá "mktemp" zjistil, že příkaz není nutně k dispozici všude.
  • Soubor "git blame file" umožnil kontrolu řádků řádků v nepovoleném neadresovaném obsahu "souboru", ale odmítl, když se v aktuálním potvrzení nezobrazí "soubor". Když byl soubor vytvořen přejmenováním existujícího souboru (ale změna nebyla udělena), toto omezení bylo zbytečně stísněné.
  • "git přidat -N dir / file & amp; git write-tree" vytvořil nesprávný strom, pokud existují další cesty ve stejném adresáři, který se po "souboru" liší.
  • "git načtení http: // user: pass @ host / repo ..." čistila část userinfo, ale "git push" to neudělala.
  • Opravena stará chyba, která způsobila chybu "git diff --ignore-space-at-eol".
  • "git poznámky sloučení" měl kód, který zjistil, zda existuje cesta (a selže, pokud ano) a pak otevřete cestu pro zápis (pokud to neplatí). Nahraďte ho otevřeným nástrojem O_EXCL.
  • "git pack-objects" a "git index-pack" většinou fungují s off_t, když mluví o posunu objektů v packfile, ale bylo tam několik stránek, které používaly "unsigned long" k neúmyslnému zkrácení.
  • Nedávná aktualizace programu "git daemon" se pokouší povolit KEEPALIVE na úrovni soketu, ale pokud je spuštěn pomocí inetd, nemusí být deskriptor standardního vstupního souboru nutně připojen ke soketu. Potlačení chyby ENOTSOCK ze souboru setsockopt ().
  • Poslední FreeBSD přestal vytvářet perl na / usr / bin / perl; přepnout výchozí cestu k / usr / local / bin / perl na ne příliš staré verze FreeBSD.
  • "git status" se naučil navrhnout "merge - abort" během konfliktního sloučení, stejně jako již naznačuje "rebase - abort" během konfliktního rebase.
  • Zdroje .c / .h jsou takto označeny v našem souboru .gitattributes, takže "git diff -W" a přátelé budou fungovat lépe.
  • Existující test generovaný autoconf pro potřebu propojení s knihovnou pthread nezkontroloval všechny funkce z knihoven pthread; nedávné FreeBSD má některé funkce v libc, ale nikoli jiné, a mylně jsme si mysleli, že propojení s libc je dost, když to není.
  • Povolte testy http daemon v testování Travis CI.
  • Uživatelé funkce API parse_options_concat () potřebují předem přidělit další sloty a vyplnit je pomocí OPT_END (), když chtějí dynamicky rozhodnout o podpoře, což způsobuje, že kód je chybný a těžko čitelný. To bylo opraveno úpravou API pro přidělení a vrácení nové kopie pole "struct option".
  • Použití souboru strbuf v "git rm" pro vytvoření názvu souboru, který chcete odstranit, byl poněkud neoptimální, který byl opraven.
  • "git commit --help" řekl, že "--no-verify" je pouze o přeskakování předvoleného háku a nedokázal říci, že také přeskočil zprávu commit-msg.
  • "git merge" v Git v2.9 byl naučen zakázat slučování nesouvisejících linek historie ve výchozím nastavení, ale to je přesně druh věci "-rejoin" režimu "git subtree" (v contrib /) chce dělat. "git subtree" byl vyučen k tomu, aby volbu "--allow-unrelated-histories" přepsala výchozí nastavení.
  • Postup sestavení pomocníka "git persistent-https" (v příspěvku) byl aktualizován tak, aby mohl být vytvořen s novějšími verzemi Go.
  • V nástroji "git diff $ treeA $ treeB" se používá optimalizace, která si zapůjčí již zaplacenou kopii v pracovním stromu, když je známo, že je stejná jako srovnávací bublina, a očekává, že otevření / mmap takové soubor je rychlejší než jeho čtení z úložiště objektů, což zahrnuje nafukování a použití delty. To však vykoplo i v okamžiku, kdy vytištěná kopie musí procházet převodem konverze na git (včetně čistého filtru), který porazí celý bod optimalizace. Optimalizace byla zakázána, když je nutná konverze.
  • "git -c grep.patternType = rozšířený protokol - basic-regexp" chybně, protože interní rozhraní API pro přístup k strojům grep nebylo správně navrženo.
  • Port systému Windows selhal některé testy v t4130, kvůli nedostatku inum v vrácených hodnotách jeho emstatou lstat (2).
  • Znaky na štítku, který se zobrazuje pro tagy / refs pro závazky v výstupu "gitweb", jsou nyní správně vynechány pro správný výstup HTML.
  • FreeBSD může být položen, když se dotazuje na adresář, který způsobil, že nekódovaný kód mezipaměti spadl zpět na pomalou cestu, což způsobilo, že testy v t7063 selžou, protože chtěli ověřit chování rychlé cesty.
  • Upozornění kompilátoru Squelch pro knihovnu netmalloc (v compat /).
  • Dokumentace rozhraní API pro hashmap nebyla jasná, pokud může být hashmap_entry bezpečně zlikvidován bez dalších úvah. Uveďte, že je to bezpečné.
  • Nedávno přepsaná verze "git am", která začala provádět interní volání do strojního zařízení, měla neúmyslnou regresi, a to bez ohledu na to, kolik sekund bylo zapotřebí použít mnoho záplat, výsledná časová značka committeru pro výsledné závady byly stejné.
  • "git difftool ..." začal v podadresáři se nepodařilo interpretovat cesty vzhledem k tomuto adresáři, který byl opraven.

Co je nového ve verzi 2.9.1:

  • Pokud je spuštěn příkaz "git daemon" bez zadaného časového limitu [init-], může být spojení z klienta, který tiše přechází do režimu offline, dlouho viset a ztrácet prostředky. KEEPALIVE na úrovni soketu byl povolen tak, aby umožnil operačnímu systému zaznamenávat taková neúspěšná připojení.
  • Příkazy v rodině "git log" vezmou% C (auto) v řetězci vlastního formátu. Toto bezpodmínečně zapne barvu, ignoruje -no-barvu nebo -color = auto, když výstup není připojen k tty; toto bylo opraveno, aby se formát skutečně choval jako "auto".
  • "git rev-list --count", jehož délka je omezena možností "-n", nefunguje dobře s optimalizovaným počítáním pro zobrazení bitmapového indexu.
  • "git show -W" (prodlužuje hunks pro pokrytí celé funkce, ohraničené čarami, které odpovídají vzoru "funcname") použitý k zobrazení celého souboru, když změna přidala celou funkci na konec souboru, byl opraven.
  • Soubor dokumentace byl aktualizován tak, aby doslovné příkazy, konfigurační proměnné a proměnné prostředí byly konzistentně vytyčovány v písmu s pevnou šířkou a tučným písmem v manuálu.
  • Podřízený příkaz "git svn propset", který byl přidán za 2,3 dnech, je nyní zdokumentován.
  • Dokumentace se pokouší trvale hlásit "GPG"; pokud odkazujete na název konkrétního programu, použije se "gpg".
  • "git reflog" se zastavil po zobrazení položky, která označuje událost vytvoření pobočky (aka "unborn"), což způsobilo, že se zdá, že reflog byl zkrácen.
  • Skript git-prompt (v příspěvku /) nebyl přátelský s těmi, kteří používají soubor "set -u", který byl opraven.
  • Kodová cesta, která používala alloca (3) k umístění neomezeného množství dat na zásobník, byla aktualizována, aby se tak zabránilo.
  • "git update-index - add - chmod = + x soubor" může být použitelný jako únikový poklop, ale není to přátelská věc, která by mohla přinést lidem, kteří je potřebují pravidelně používat. "místo git add --chmod = + x soubor".
  • Vytvořte vylepšení pro gnome-keyring (v contrib /)
  • "stav git", který říkal "pracovní adresář", když to znamenalo "pracovní strom".
  • Komentáře týkající se nesprávných skladeb FreeBSD byly vyjasněny číslem verze (9.x a dříve jsou rozděleny, novější jsou v pořádku).
  • "git cherry-pick A" pracoval na nenarozené větvi, ale "git cherry-pick A..B" to neudělal.
  • "git add -i / -p" se naučil ctít diff.compactionHeuristic experimentální knoflík, takže uživatel může pracovat na stejném rozdělení hunk jako výstup "git diff".
  • "log -graph -format =" zjistil, že "%> (N)" určuje šířku vzhledem k levému okraji terminálu, nikoliv vzhledem k oblasti pro kreslení textu napravo od původu - sekci grafů. Nyní také přijímá záporný N, což znamená, že limit sloupce je relativní vzhledem k pravému okraji.
  • Vlastní pravidlo pro část paměti, které obsahuje odkazy, které mají být načteny v "git fetch", bylo špinavé, které bylo vyčištěno.
  • "git bisect" provádí interní volání "git diff-tree", když bisekce zjistí viníka, ale toto volání neinicializovalo datovou strukturu, aby správně přenesla API diff-tree.
  • Formáty různých dat (a jejich ověření), kde používáme GPG podpis, byly zdokumentovány.
  • Opravte neúmyslnou regresi v v2.9, která rozděluje "klon -depth", který se vrátí do submodulů tak, že nenechá submoduly také být plynulé klonovat, což není mnoho serverových instancí, které hostitelé před submodulemi nejsou připraveny.
  • Opravte zbytečně odpad v idiomatickém použití ': $ {VAR = default}' a nastavte výchozí hodnotu, aniž byste ji vložili do dvojitých uvozovek.
  • Některý kód specifický pro konkrétní platformu měl striktní deklaraci funkcí C, které nejsou ANSI, a neobsahují žádné parametry, které byly opraveny.
  • Interní kód používaný k zobrazení offsetu místního časového pásma není připraven zpracovat časové značky za rok 2100 a dal volajícímu hodnotu falešného offsetu. Použijte místo toho více než benigní vyhlížející znak +0000 a nechte v takovém případě "git log", namísto přerušení.
  • Jedna ze čtyř invokací readlink (1) v naší testovací sadě byla přepsána tak, aby test mohl běžet na systémech bez příkazu (ostatní jsou v testovacím rámci valgrind a t9802).
  • t / perf needs / usr / bin / time s rozšířením GNU; jeho vyvolání je aktualizováno na "gtime" na Darwinu.
  • Byla opravena chyba, která způsobila "git p4", když byla spuštěna v podrobném režimu a hlásila cesty, které byly vynechány kvůli nesprávné větvě. příkaz uvedl "Ignorování souboru mimo předponu" pro cesty, které jsou _inside _.
  • Dokumentace nejvyšší úrovně "git help git" stále ukázala na soubor dokumentace, který byl umístěn v repozitáři Google-code. Aktualizujte jej a přejděte na stránku https://git.github.io/htmldocs/git.html.

Co je nového ve verzi 2.9.0:



Nové v GIT 2.8.1 (5. dubna 2016)

Co je nového ve verzi 2.8.1:

  • "cíl rpmbuild" byl porušen, protože jeho vstup, git.spec.in, nebyl aktualizován tak, aby odpovídal souboru, který popisuje, který byl nedávno přejmenován. To bylo opraveno.

Co je nového ve verzi 2.7.3:

  • Tradiční jsou testy, které vyzkoušejí příkazy, které pracují na obsahu v pracovním stromu, nazvány názvy souborů "worktree", ale s nedávným přidáním dílčího příkazu "git worktree", jehož testy jsou také pojmenovány podobně, má je těžší jim oddělit. Tradiční testy byly přejmenovány na použití "work-tree" namísto pokusu o jejich rozlišení.
  • Mnoho kódových cest zapomene zkontrolovat návratovou hodnotu z git_config_set (); funkce je zničena (), aby se ujistil, že při nastavování konfigurační proměnné neproběhne.
  • Manipulace s chybami při psaní do našeho interního asynchronního procesu byla robustnější, což snižuje neprůhlednost našich testů.
  • "git show" HEAD: Foo [BAR] Baz '"interpretoval argument jako rev, tj. objekt pojmenovaný názvem cesty s zástupnými znaky ve stromovém objektu.
  • "git rev-parse - git-common-dir" použitý ve funkci worktree chybně při spuštění z podadresáře.
  • Příkaz "v (iew)" interaktivního příkazu "git am -i" byl přerušený v časovém rámci 2.6.0, když byl příkaz přepisován v C.
  • "git merge-tree" používaný k nesprávnému použití "obojí přidané" konflikty s vlastní "vytvořit falešný soubor předchůdce, který má společné části toho, co obě strany přidaly a dělat 3-cesta sloučení" toto bylo aktualizováno, aby se ve zbytku systému používal obvyklý "trojcestný sloučení s prázdným blobem jako falešný společný soubor předků".
  • Pravidlo vlastnictví paměti API fill_textconv (), které bylo trochu obtížné, bylo zdokumentováno trochu lepší.
  • V dokumentaci nebylo jasně uvedeno, že režim "jednoduchý" je nyní výchozí pro "git push", když není nastavena konfigurace push.default.
  • Nejnovější verze GNU grep jsou pickier, pokud jejich vstup obsahuje libovolné binární data, které některé z našich testů používá. Přepište testy, abyste se vyhnuli problému.
  • Pomocná funkce "git submodule" používá od verze v2.7.0 seznam modulů, které odpovídají argumentu pathspec danému jeho dílčím příkazům (např. "submodule add").
  • "git config section.var hodnota" pro nastavení hodnoty v konfiguračním souboru pro jeden repozitář se nezdařila, když byla spuštěna mimo libovolné úložiště, ale neříkala správně.
  • Kód pro čtení dat o balíčku pomocí offsets uložených v souboru idx pack byl podrobněji zkontrolován platností dat v idx.

Co je nového ve verzi 2.7.2:

  • Při zařazování značek konfliktu do sloučených obsahů, které jsou samy o sobě CRLF line-ended, byly vyučovány stroje s nízkými úrovněmi sloučení.
  • "git worktree" měl rozbitý kód, který se pokusil o automatickou opravu možných nekonzistencí, která je výsledkem toho, že koncoví uživatelé pohybují pracovní plochu na různá místa, aniž by řekli Gitovi (původní repozitář potřebuje udržovat zpětnou vazbu na pracovní plochu, ale "mv" běží koncoví uživatelé, kteří s touto skutečností nejsou obeznámeni, samozřejmě je nebudou upravovat), což ve skutečnosti zhoršilo situaci při spuštění.
  • "git push - force-with-lease" se naučil hlásit, zda je potřeba vynutit (nebo rychle posunout).
  • Příkaz emulovaný "ano" používaný v našich testovacích skriptech byl upraven tak, aby nevynaložil příliš mnoho času na generování nepotřebného výstupu, který není použit, aby pomohl těm, kteří testovali na systému Windows, kde by se nezastavil, dokud nevyplní zásobník potrubí na nedostatek SIGPIPE.
  • Vimdiff backend pro "git mergetool" byl vyladěn pro uspořádání a číslování vyrovnávacích pamětí v pořadí, které by odpovídalo očekávání většiny lidí, kteří četli zleva doprava, pak shora dolů a přiřadit buffery 1 2 3 4 "mentálně" do lokální databáze vzdáleného sloučení na základě objednávky.
  • Dokumentace pro "git clean" byla opravena; zmínil se, že .git / modules / * jsou odstraněny dvěma "-f", což nikdy nebylo.
  • Cesta, která byla indexu označena jako "add -N", ještě není v indexu, ale několik příkazů se chovalo jako by bylo škodlivé.
  • Obsahuje také drobnou dokumentaci a testovací aktualizace.

Co je nového ve verzi 2.6.4:

  • Skript "configure" netestoval správně -lpthread, což narušilo některé linkery.
  • Přidejte podporu pro hovory http / https přes proxy pro ponožky.
  • Oprava přenositelnosti pro systém Windows, která může přepsat proměnnou $ SHELL pomocí cest bez POSIX.
  • Důsledně povolujeme, aby všechny háky ignorovaly standardní vstupy, než aby si SIGPIPE stěžovali.
  • Opravte shell citace v příspěvkovém skriptu.
  • Oprava portability testu pro téma v verze 2.6.1.
  • Povolit rozšíření tilde v některých http config proměnných.
  • Uveďte užitečný speciální případ "diff / show - slovo - diff - regex =." jako příklad v dokumentaci.
  • Opravte rohové pouzdro ve větvi filtru.
  • Vytvořte git-p4 na samostatné hlavě.
  • Vyjasnění dokumentace pro "check-ignore" bez "--verbose".
  • Stejně jako pracovní strom je vyčištěn, když uživatel zrušil odeslání v P4Submit.applyCommit (), vyčistěte nepořádek, pokud "p4 submit" selže.
  • Zbylý soubor .idx bez odpovídajícího souboru .pack v repozitáři zhoršuje výkon; "git gc" se naučil stříhat je.
  • Kód pro přípravu pracovní strany stromu dočasného adresáře pro funkci "dir-diff" zapomněl, že symbolické odkazy nemusí být zkopírovány (nebo symbolicky připojeny) do dočasné oblasti, protože kód je již speciálních případů a přepsá jim. Kromě toho bylo špatné vyzkoušet výpočet názvu objektu cílového symbolického odkazu, který nemusí existovat nebo může být adresář.
  • Chybějící konfigurovaná proměnná rebase.autostash z příkazového řádku nebyla schopna porazit, protože chybí "git rebase --no-autostash".
  • Povolit "git interpret-trailers" k běhu mimo úložiště Git.
  • Vytvořte správnou "špinavou" značku pro příkazy shell, i když jsme na osiřelé nebo nenarozené větvi.
  • Některé rohové případy byly opraveny v porovnávání řetězců v "stavu git".
  • Společná krypto implementace SHA1_Update () společnosti Apple nevyžaduje více než 4 GB najednou a nyní máme pro tento proces kompilované řešení.

Co je nového ve verzi 2.5.3:

  • Experimentální funkce bez mezipaměti byla chyba, když se jedná o cesty s několika úrovněmi podadresářů.
  • Poslední verze skriptované verze "git am" má regrese výkonu v kódové cestě "git am - skip", která již neexistuje ve vestavěné verzi na frontě "master". Opravte regresi v poslední skriptované verzi, která se zobrazí v stopě údržby 2.5.x a starší.

Co je nového ve verzi 2.4.6:

  • "git fetch --depth =" a "git clone --depth =" vydal malou žádost o převod dokonce i na upload-pack, který tuto funkci nepodporuje.
  • "git fsck" slouží k ignorování chybějících nebo neplatných objektů zaznamenaných v reflogu.
  • Dokončení tcsh píše skript bash, který by však selhal pro uživatele s nastavením noclobber.
  • Nedávné aktualizace systému Mac OS X přerušují logiku, aby zjistila, že se zařízení nachází na síti střídavého proudu v ukázkovém pre-auto-gc skriptu.
  • "git format-patch -ignore-if-upstream A..B" se neradi nenávidí jako hranice.
  • Obsahuje typofixy, aktualizace dokumentace a triviální kód
  • vyčištění.

Co je nového ve verzi 2.4.2:

  • "git rev-list - objektů $ old --not --all", aby zjistil, zda je vše, co je dosažitelné z $ old již připojeno k existujícím odkazům, bylo velmi neúčinné.
  • "hash-object -literally" zaváděný v v2.2 nebyl připraven přijmout skutečně dlouhý název typu objektu.
  • "git rebase - quiet" nebyl zcela klidný, když není nic co dělat.
  • Dokončení pro hodnotu parametru "log -decorate =" bylo nesprávné.
  • "filtrová vetva" poškozená zpráva o doručení zprávy, která končí neúplnou čarou na platformách s některými implementacemi "sed", které používají takovou linku. Využijte to tím, že se vyvarujete použití "sed".
  • "git démon" se nepodaří stavět ze zdroje pod konfigurací NO_IPV6 (regrese v 2.4).
  • "git stash pop / apply" zapomněl, aby se ujistil, že nejen pracovní strom je čistý, ale i index je čistý. Posledně jmenovaný je důležitý, protože stashová aplikace může být konfliktní a index bude použit pro řešení konfliktů.
  • Předpokládali jsme $ GIT_EXEC_PATH a cesta "git" je nainstalována (obvykle "/ usr / bin") na $ PATH při vyvolání podprogramů a háků téměř na věčnost, ale původní případ, -bogus (tj. nainstalujte git na / opt / foo / git a spusťte jej bez nutnosti / opt / foo na $ PATH), a co je důležitější, stalo se stále méně relevantní, protože Git rostl více mainstream (tj. na jejich $ PATH). Zastavte předcházející cestu, ve které je "git" nainstalován uživatelům '$ PATH, protože to by zasahovalo do příkazu k vyhledávání příkazů (např. Nemusí mít verze programů, které nesouvisejí s Git v / usr / bin a chtějí přepíšete je tím, že máte jiný v adresáři / usr / local / bin a máte druhý adresář dříve ve svém $ PATH).
  • Obsahuje také typofixy, aktualizace dokumentace a odstraňování triviálních kódů.

Podobný software

reposurgeon
reposurgeon

17 Feb 15

hg-diff
hg-diff

20 Feb 15

ViewGit
ViewGit

11 May 15

hgsubversion
hgsubversion

14 Apr 15

Komentáře k GIT

Komentáře nebyl nalezen
Přidat komentář
Zapnout obrázky!