GIT

Software kuvakaappaus:
GIT
Ohjelmiston tiedot:
Versio: 2.16.0 Päivitetty
Lähetyksen päivämäärä: 20 Jan 18
Kehittäjä: Junio C Hamano
Lupa: Vapaa
Suosio: 64

Rating: 3.0/5 (Total Votes: 1)

Git on yksi yleisimmin käytetyistä hajautetuista versionhallintajärjestelmistä, joita kehittäjät kuvasivat maailmanlaajuisesti VCS-palveluna. Se toimii vain päätteeltä, mutta useita etupäitä on ladattavissa.

Se on ilmainen ja avoimen lähdekoodin versionhallintajärjestelmä, joka pystyy käsittelemään sekä suuria että pieniä projekteja mahdollisimman tehokkaasti ja nopeasti. Ohjelma voidaan helposti kuvata pieneksi, nopeaksi ja hajautetuksi.


Komentorivivaihtoehdot

Ohjelmaan kuuluu kourallinen komentoja, joita kuka tahansa voi helposti muistaa. Kaikki toiminnot suoritetaan paikallisesti, ja ne on suunniteltu toimimaan Linux-ytimessä.

Mukaan tulevat komennot ovat lisäys, bisect, branch, checkout, clone, commit, diff, fetch, grep, init, kirjaudu, yhdistä, mv, vedä, push, rebase, reset, rm, show, status ja tag. Voit helposti oppia mitä kukin komento suorittaa suorittamalla git -help-komennon pääteikkunasta.


Ominaisuudet yhdellä silmäyksellä

Kun käytät Gitia, käyttäjät voivat lisätä tiedostoja, kassapostin oksia tai polkuja, kloonireitit, luoda tyhjän Git-reposin, liittyä useisiin kehitystiedostoihin, näyttää puun toimintatilan, tallentaa muutoksia sekä luoda, luetteloida tai poista oksat.

Sovelluksen avulla käyttäjät voivat tarkastella muutoksia sitoutuneiden ja työskentelevien puiden välillä, tulostuslinjoja, jotka vastaavat mallia, tarkastella lokitiedostoja, latausohjeita ja esineitä, nimetä tai siirtää tiedostoja, linkkejä ja hakemistoja, päivittää kauko-ohjeita ja poistaa tiedostoja työpuusta.


Eri graafisia etupäitä on olemassa

Vaikka se on vain komentorivin ohjelmisto, käytettävissä on useita graafisia käyttöliittymiä (GUI), kuten git-cola, SmartGit, GitEye, kikatus ja gitg. Projekti ylittää SCM (Software Configuration Management) -apuohjelmat, kuten CVS, Subversion, ClearCase ja Perforce, hankkimalla halvan paikallisen haarautumisen, useita työnkulkuja ja käteviä väliportaita.


Bottom line

Yhteenvetona Git on ilmainen versionhallintajärjestelmä, jolla on salamannopea suorituskyky, se on helppo oppia ja sillä on hyvin pieni jalanjälki. Gitin avulla voit tehdä kitkattomia kontekstikytkentää, roolipohjaisia ​​koodiriviä, ominaisuustiedostosta ja kertakäyttöisiä kokeiluja.

Uutta tässä versiossa:

  • Apuritoiminto, jolla lukee yksi koko rivi strbufiksi, laukaisi virheellisesti OOM-virheen EOF: ssä tietyissä olosuhteissa, jotka on korjattu.
  • "& quot; cc: # cruft & quot ;, cc: a@dd.re.ss # cruft" opetti "git send-email" kelvollisena tapana kertoa se, että sen täytyy myös lähettää hiilikuitin traileriosaan.
  • Korjaa regressiota "gitk - bisektiini" tuoreella päivityksellä.
  • Toisin kuin & quot; git commit-tree & lt; tiedosto "," git commit-tree -F-tiedosto " ei siirtänyt tiedoston sisältöä sanatarkasti ja sen sijaan täytti lopullisen rivin loppuun, jos se on olemassa. Jälkimmäinen on päivitetty vastaamaan edellisen käyttäytymistä.
  • "git-arkisto", varsinkin kun sitä käytettiin polkupeilillä, säilytti tyhjän hakemiston sen lähdössä, vaikka Git itse ei koskaan niin. Tämä on korjattu.
  • API-virheenkorjaus, joka myös sattuu varoituksia GCC: stä.
  • "git gc" yrittää välttää kahden tapauksen samanaikaisesti lukemalla ja kirjoittamalla pid / isäntä ja lukitustiedostoon; se käytti väärää fscanf () -formaattia lukemalla, joka on korjattu.
  • Testilinterille on opetettu, että emme pidä "echo-e".
  • Koodi cmp.std.c nitpick.
  • "git kuvaavat --match" oppinut ottamaan useita malleja v2.13-sarjoissa, mutta ominaisuus jätti huomiotta kuvioita ensimmäisen jälkeen ja ei toiminut lainkaan. Tämä on korjattu.
  • "git cat-file --textconv" alkoi äskettäin segeeding, joka on korjattu.
  • Sisäänrakennettu kuvio, jolla ilmaistaan ​​"toimintootsikko" HTML ei täsmännyt .. elementtejä, joilla ei ole määritteitä, jotka on korjattu.
  • & quot; git mailinfo & quot; oli löysä dekoodauksessa, jossa mainitaan tulostettava ja tuotettu roskat, kun kaksi kirjainta tasa-arvoisen merkin jälkeen eivät ole heksadesimaalisia. Tämä on korjattu.
  • Sulautettujen "-X" -dokumentaatio harhaanjohtavaa kirjoitusta varten viittaa siihen, että "-s" on olemassa, mikä ei ole.
  • Merkitä järjestelmän nimi nimellä & quot; Git & quot; tuloksessa request-pull-skripti.
  • Korjataan valgrindin tunnistamia kourallinen muistin käyttöongelmia.
  • Taustatekijät, joiden moraalinen vastine vuodelta 2015, korjataan kyselyn emulointiin ylävirran gnulibista, jotta HPE NonStopin satunnaiset rikkoutumiset voidaan korjata.
  • Muotoon & quot; - format = ... & quot; vaihtoehto "git for-each-ref" komento (ja sen ystävät, eli "git-haara / tag"), "% (atomi:)" (esim. "% (refname:)", "% (body:)" käytetään virheiden poistamiseen.) Sen sijaan käsitellään heitä kuin jos kaksoispiste ja tyhjä merkkijonot eivät olleet siellä.
  • Käyttäjät, joilla on & quot; color.ui = always & quot; niiden konfiguraatiossa rikkoi äskettäin tehty muutos, joka teki putkikomennoista kiinnittää huomiota niihin, kun laastari, joka on luonut sisäisesti "git add -p" olivat värjätyt (heh) ja tehneet käyttökelvottomiksi. Tämä on korjattu.
  • "git-haara -M a b" kun taas haarassa, joka ei ole täysin riippuvainen jompikumpiin haaroihin a tai sivukonttori b käyttäytyisi huonosti, kun useat työtilat olivat käytössä. Tämä on korjattu.
  • "Git-pikalähetys" jossa -M / -C-vaihtoehto on annettu "kopioi" ohje, joka on samanaikaisesti muutettu, mikä on väärä.
  • Tarkistuspistekomento & quot; git fast-import & quot; ei huuhtonut päivityksiä refs- ja -merkkeihin, ellei vähintään yhtä kohdetta luotu viimeisimmältä tarkistuspisteeltä, joka on korjattu, koska nämä asiat voivat tapahtua ilman uuden objektin luomista.
  • TravisCI: n ohjaamiseen tarkoitetut komentosarjat on organisoitu uudelleen, ja optimointi estää menojaksot sivuliikkeellä, jonka kärki on merkitty.
  • "git fetch: & quot; antaa objektin nimen sivulle, kun toinen puoli hyväksyy tällaisen pyynnön, koska Git v2.5, mutta dokumentaatio jätettiin vanhentuneeksi.
  • Jäljelle jäänyt regressio 2.11: ssä, joka teki koodin lukea vaihtoehtoisten esineiden luetteloa ylittää merkkijonon loppu, on korjattu.

Uutta versiossa 2.15.1:

  • Apuritoiminto, jolla lukee yksi koko rivi strbufiksi, laukaisi virheellisesti OOM-virheen EOF: ssä tietyissä olosuhteissa, jotka on korjattu.
  • "& quot; cc: # cruft & quot ;, cc: a@dd.re.ss # cruft" opetti "git send-email" kelvollisena tapana kertoa se, että sen täytyy myös lähettää hiilikuitin traileriosaan.
  • Korjaa regressiota "gitk - bisektiini" tuoreella päivityksellä.
  • Toisin kuin & quot; git commit-tree & lt; tiedosto "," git commit-tree -F-tiedosto " ei siirtänyt tiedoston sisältöä sanatarkasti ja sen sijaan täytti lopullisen rivin loppuun, jos se on olemassa. Jälkimmäinen on päivitetty vastaamaan edellisen käyttäytymistä.
  • "git-arkisto", varsinkin kun sitä käytettiin polkupeilillä, säilytti tyhjän hakemiston sen lähdössä, vaikka Git itse ei koskaan niin. Tämä on korjattu.
  • API-virheenkorjaus, joka myös sattuu varoituksia GCC: stä.
  • "git gc" yrittää välttää kahden tapauksen samanaikaisesti lukemalla ja kirjoittamalla pid / isäntä ja lukitustiedostoon; se käytti väärää fscanf () -formaattia lukemalla, joka on korjattu.
  • Testilinterille on opetettu, että emme pidä "echo-e".
  • Koodi cmp.std.c nitpick.
  • "git kuvaavat --match" oppinut ottamaan useita malleja v2.13-sarjoissa, mutta ominaisuus jätti huomiotta kuvioita ensimmäisen jälkeen ja ei toiminut lainkaan. Tämä on korjattu.
  • "git cat-file --textconv" alkoi äskettäin segeeding, joka on korjattu.
  • Sisäänrakennettu kuvio, jolla ilmaistaan ​​"toimintootsikko" HTML ei täsmännyt .. elementtejä, joilla ei ole määritteitä, jotka on korjattu.
  • & quot; git mailinfo & quot; oli löysä dekoodauksessa, jossa mainitaan tulostettava ja tuotettu roskat, kun kaksi kirjainta tasa-arvoisen merkin jälkeen eivät ole heksadesimaalisia. Tämä on korjattu.
  • Sulautettujen "-X" -dokumentaatio harhaanjohtavaa kirjoitusta varten viittaa siihen, että "-s" on olemassa, mikä ei ole.
  • Merkitä järjestelmän nimi nimellä & quot; Git & quot; tuloksessa request-pull-skripti.
  • Korjataan valgrindin tunnistamia kourallinen muistin käyttöongelmia.
  • Taustatekijät, joiden moraalinen vastine vuodelta 2015, korjataan kyselyn emulointiin ylävirran gnulibista, jotta HPE NonStopin satunnaiset rikkoutumiset voidaan korjata.
  • Muotoon & quot; - format = ... & quot; vaihtoehto "git for-each-ref" komento (ja sen ystävät, eli "git-haara / tag"), "% (atomi:)" (esim. "% (refname:)", "% (body:)" käytetään virheiden poistamiseen.) Sen sijaan käsitellään heitä kuin jos kaksoispiste ja tyhjä merkkijonot eivät olleet siellä.
  • Käyttäjät, joilla on & quot; color.ui = always & quot; niiden konfiguraatiossa rikkoi äskettäin tehty muutos, joka teki putkikomennoista kiinnittää huomiota niihin, kun laastari, joka on luonut sisäisesti "git add -p" olivat värjätyt (heh) ja tehneet käyttökelvottomiksi. Tämä on korjattu.
  • "git-haara -M a b" kun taas haarassa, joka ei ole täysin riippuvainen jompikumpiin haaroihin a tai sivukonttori b käyttäytyisi huonosti, kun useat työtilat olivat käytössä. Tämä on korjattu.
  • "Git-pikalähetys" jossa -M / -C-vaihtoehto on annettu "kopioi" ohje, joka on samanaikaisesti muutettu, mikä on väärä.
  • Tarkistuspistekomento & quot; git fast-import & quot; ei huuhtonut päivityksiä refs- ja -merkkeihin, ellei vähintään yhtä kohdetta luotu viimeisimmältä tarkistuspisteeltä, joka on korjattu, koska nämä asiat voivat tapahtua ilman uuden objektin luomista.
  • TravisCI: n ohjaamiseen tarkoitetut komentosarjat on organisoitu uudelleen, ja optimointi estää menojaksot sivuliikkeellä, jonka kärki on merkitty.
  • "git fetch: & quot; antaa objektin nimen sivulle, kun toinen puoli hyväksyy tällaisen pyynnön, koska Git v2.5, mutta dokumentaatio jätettiin vanhentuneeksi.
  • Jäljelle jäänyt regressio 2.11: ssä, joka teki koodin lukea vaihtoehtoisten esineiden luetteloa ylittää merkkijonon loppu, on korjattu.

Uutta versiossa 2.15.0:

  • Apuritoiminto, jolla lukee yksi koko rivi strbufiksi, laukaisi virheellisesti OOM-virheen EOF: ssä tietyissä olosuhteissa, jotka on korjattu.
  • "& quot; cc: # cruft & quot ;, cc: a@dd.re.ss # cruft" opetti "git send-email" kelvollisena tapana kertoa se, että sen täytyy myös lähettää hiilikuitin traileriosaan.
  • Korjaa regressiota "gitk - bisektiini" tuoreella päivityksellä.
  • Toisin kuin & quot; git commit-tree & lt; tiedosto "," git commit-tree -F-tiedosto " ei siirtänyt tiedoston sisältöä sanatarkasti ja sen sijaan täytti lopullisen rivin loppuun, jos se on olemassa. Jälkimmäinen on päivitetty vastaamaan edellisen käyttäytymistä.
  • "git-arkisto", varsinkin kun sitä käytettiin polkupeilillä, säilytti tyhjän hakemiston sen lähdössä, vaikka Git itse ei koskaan niin. Tämä on korjattu.
  • API-virheenkorjaus, joka myös sattuu varoituksia GCC: stä.
  • "git gc" yrittää välttää kahden tapauksen samanaikaisesti lukemalla ja kirjoittamalla pid / isäntä ja lukitustiedostoon; se käytti väärää fscanf () -formaattia lukemalla, joka on korjattu.
  • Testilinterille on opetettu, että emme pidä "echo-e".
  • Koodi cmp.std.c nitpick.
  • "git kuvaavat --match" oppinut ottamaan useita malleja v2.13-sarjoissa, mutta ominaisuus jätti huomiotta kuvioita ensimmäisen jälkeen ja ei toiminut lainkaan. Tämä on korjattu.
  • "git cat-file --textconv" alkoi äskettäin segeeding, joka on korjattu.
  • Sisäänrakennettu kuvio, jolla ilmaistaan ​​"toimintootsikko" HTML ei täsmännyt .. elementtejä, joilla ei ole määritteitä, jotka on korjattu.
  • & quot; git mailinfo & quot; oli löysä dekoodauksessa, jossa mainitaan tulostettava ja tuotettu roskat, kun kaksi kirjainta tasa-arvoisen merkin jälkeen eivät ole heksadesimaalisia. Tämä on korjattu.
  • Sulautettujen "-X" -dokumentaatio harhaanjohtavaa kirjoitusta varten viittaa siihen, että "-s" on olemassa, mikä ei ole.
  • Merkitä järjestelmän nimi nimellä & quot; Git & quot; tuloksessa request-pull-skripti.
  • Korjataan valgrindin tunnistamia kourallinen muistin käyttöongelmia.
  • Taustatekijät, joiden moraalinen vastine vuodelta 2015, korjataan kyselyn emulointiin ylävirran gnulibista, jotta HPE NonStopin satunnaiset rikkoutumiset voidaan korjata.
  • Muotoon & quot; - format = ... & quot; vaihtoehto "git for-each-ref" komento (ja sen ystävät, eli "git-haara / tag"), "% (atomi:)" (esim. "% (refname:)", "% (body:)" käytetään virheiden poistamiseen.) Sen sijaan käsitellään heitä kuin jos kaksoispiste ja tyhjä merkkijonot eivät olleet siellä.
  • Käyttäjät, joilla on & quot; color.ui = always & quot; niiden konfiguraatiossa rikkoi äskettäin tehty muutos, joka teki putkikomennoista kiinnittää huomiota niihin, kun laastari, joka on luonut sisäisesti "git add -p" olivat värjätyt (heh) ja tehneet käyttökelvottomiksi. Tämä on korjattu.
  • "git-haara -M a b" kun taas haarassa, joka ei ole täysin riippuvainen jompikumpiin haaroihin a tai sivukonttori b käyttäytyisi huonosti, kun useat työtilat olivat käytössä. Tämä on korjattu.
  • "Git-pikalähetys" jossa -M / -C-vaihtoehto on annettu "kopioi" ohje, joka on samanaikaisesti muutettu, mikä on väärä.
  • Tarkistuspistekomento & quot; git fast-import & quot; ei huuhtonut päivityksiä refs- ja -merkkeihin, ellei vähintään yhtä kohdetta luotu viimeisimmältä tarkistuspisteeltä, joka on korjattu, koska nämä asiat voivat tapahtua ilman uuden objektin luomista.
  • TravisCI: n ohjaamiseen tarkoitetut komentosarjat on organisoitu uudelleen, ja optimointi estää menojaksot sivuliikkeellä, jonka kärki on merkitty.
  • "git fetch: & quot; antaa objektin nimen sivulle, kun toinen puoli hyväksyy tällaisen pyynnön, koska Git v2.5, mutta dokumentaatio jätettiin vanhentuneeksi.
  • Jäljelle jäänyt regressio 2.11: ssä, joka teki koodin lukea vaihtoehtoisten esineiden luetteloa ylittää merkkijonon loppu, on korjattu.

Uutta versiossa 2.14.1:

  • ssh: //..." URL-osoitteesta Git v2.7.6

Uutta versiossa 2.9.3:

  • * Apuritoiminto, joka ottaa sisällön objektin sisällön ja löytää sen aiheen, ei jättänyt huomiotta johtavia tyhjiä viivoja, kuten muutkin koodepatsaukset tekevät. Jätä se huomiotta johtavien tyhjien viivojen vastaavuus.
  • Git ei tiedä, mitä indeksin sisältöä olisi lisättävä "git add-N": llä, joten "git grep - välimuistissa" ei pitäisi näyttää osumia (tai näyttää osumien puutteen -L ) tällaisessa polussa, mutta tätä logiikkaa ei sovelleta "git grep" eli etsimiseen työpuu-tiedostoissa. Mutta teimme niin virheellisesti, mikä on korjattu.
  • "git rebase -i --autostash" ei palauttanut automaattisen stashed-muutoksen, kun toiminto keskeytettiin.
  • "git commit - muokkaa - allow-empty-message -S" sitoutumatta ilman viestirunkoa voisi olla virheellisesti tunnistettu, missä otsakkeen otsikko päättyy.
  • Lisää lisättyjä päivityksiä merkkijonoihin, joiden loppukäyttäjä kirjautuu kirjaimellisesti kiinteäleveiseen kirjasimeen.
  • Pitkän aikaa käytimme koodin komentoa, joka sanoi, että värilliset tuotos toimisi vain, kun käytämme fprintf / fputs-tiedostoja Windowsissa, mikä ei ole enää tapahtunut viime vuosina.
  • "gc.autoPackLimit", kun asetettu arvoon 1 ei saa laukaista uudelleenpakkaamista, kun vain yksi pakkaus on, mutta koodi on laskenut huonosti ja teki niin.
  • Yksi osa "git am" oli epämiellyttävä auttaja -toiminto, joka kutsui ulkoa "hänen" ulkopuolelta, eikä sitä kutsuttu "meillä", joka ei ollut sukupuolineutraali eikä myöskään ole ristiriidassa muun järjestelmän kanssa ulkopuolisia tavaroita kutsutaan nimellä "heidän" toisin kuin "meidän".
  • Testauskehikko sai uuden apulainen test_match_signal tarkistaa poistumiskoodin odottamattoman signaalin surmasta.
  • "git blame -M" jätti yhden rivin, joka siirrettiin tiedostossa.
  • Korjaa hiljattain esitellyt koodipatsaat, jotka ovat mukana rinnakkaisissa alamoduulitoiminnoissa, jotka luvattivat lukemasta liian aikaisin ja jotka voisivat hukata keskusyksikköä yritettäessä kirjoittaa sarakkeen tapauksessa.
  • "git grep -i" on opetettu palauttamaan asioihin ei-ascii-alueissa oikein.
  • Testi, joka ehdotti ehdottomasti "mktemp", sai tietää, että komento ei ole välttämättä saatavilla kaikkialla.
  • "Git-syytti-tiedosto" mahdollisti tarkastettavien "tiedoston" tiedostomäärättömässä sisällössä olevien rivien rivin, mutta se kieltäytyi, kun "tiedosto" ei näkynyt nykyisessä lähetyksessä. Kun "tiedosto" luotiin nimeämällä olemassa oleva tiedosto (mutta muutosta ei ole tehty), tämä rajoitus oli tarpeettoman tiukka.
  • "git add-dir / file & amp; git-kirjoituspuu" tuotti virheellisen puun, kun samassa hakemistossa on muita polkuja, jotka lajitellaan "tiedoston" jälkeen.
  • "git fetch http: // user: pass @ host / repo ..." pureskeli käyttäjätietokannan, mutta "git push" ei.
  • Vanha ikäraja, joka aiheutti "git diff --ignore-space-at-eol" -virheen, on korjattu.
  • "Git-muistiinpanojen yhdistäminen" oli koodi, jolla näet, onko polku olemassa (ja epäonnistuu, jos se on) ja avaa sitten polun kirjoittamiseen (kun sitä ei ole). Vaihda se avaamalla O_EXCL.
  • "git pack-objects" ja "git index-pack" käyttävät enimmäkseen off_t: tä, kun puhutaan pakkaustiedostojen objekteista, mutta siellä oli kourallinen paikkoja, jotka käyttivät "unsigned long" tahattomaan katkaisuun.
  • Viimeaikainen päivitys "git daemonille" yrittää ottaa käyttöön socket-tason KEEPALIVE: n, mutta silloin, kun se on kutsu inetd: n kautta, standardi tulotiedoston kuvaaja ei välttämättä liity pistorasiaan. Poista ENOTSOCK-virhe setsockopt (): sta.
  • Viimeaikaiset FreeBSD lopetti perl-tietojen saatavuuden osoitteessa / usr / bin / perl; siirrä oletusarvoisesti sisäänrakennettu polku / usr / local / bin / perl: iin liian pienille FreeBSD-julkaisuille.
  • "git-tila" oppii ehdottamaan "sulautuvaa yhdistämistä" ristiriitaisen sulautumisen aikana, aivan kuten se jo ehdottaa "rebase -abort" ristiriitaisen rebase-ohjelman aikana.
  • .c / .h-lähteet on merkitty sellaisenaan .gitattributes-tiedostossamme niin, että "git diff -W" ja ystävät toimisivat paremmin.
  • Olemassa oleva autokonfilla luotu testi, jonka mukaan tarvittiin yhteys pthread-kirjastoon, ei tarkistanut kaikkia toimintoja pthread-kirjastoista. äskettäin FreeBSD: llä on joitain funktioita libc: ssä, mutta ei muita, ja olemme virheellisesti ajatelleet, että liittäminen libc: hen riittää, kun se ei ole.
  • Salli http -demon-testit Travis CI -testeissä.
  • Parse_options_conctions () API -toiminnon käyttäjien tulee jakaa lisäreput etukäteen ja täyttää ne OPT_END () -ohjelmalla, kun he haluavat tuoda tuettuja vaihtoehtoja dynaamisesti, mikä tekee virheestä virheellisen ja vaikeasti lukea. Tämä on korjattu säätämällä sovellusliittymää kohdistamaan ja palauttamaan uuden "struct option" -määrityksen kopio.
  • Strbufin käyttäminen "git rm" -tiedoston poistamiseen käytettävän tiedostonimen luomiseen oli hieman epätarkka, joka on korjattu.
  • "git commit --help" sanoi "--no-verify" on vain ohittamasta esiasennettua koukkua eikä ole sanonut, että se myös ohitti commit-msg-koukun.
  • "Git-yhdistäminen" Git v2.9: ssä opetettiin estämään olettamattomien historiallisten linjojen yhdistämisen, mutta se on juuri sellainen asia kuin "git subtree" haluaa tehdä. "git subtree" on opetettu käyttämään "--allow-unrelated-histories" -vaihtoehtoa ohittamaan oletusarvo.
  • "git persistent-https" -avustajan (in contrib /) rakentamismenettely on päivitetty siten, että se voidaan rakentaa uudemmilla Go-versioilla.
  • Git diff $ treeA $ treeB: ssä käytetään optimointia lainata jo tarkistettu kopio työpuuhun, kun tiedetään olevan sama kuin vertailussa käytetty blob, odottaa, että tällaisten tiedosto on nopeampi kuin lukea sitä esineen tallennuksesta, johon kuuluu delta täyttö ja soveltaminen. Tämä kuitenkin potkii, vaikka tarkistettu kopio tarvitsee konvertoida-git-muuntamiseen (mukaan lukien puhtaan suodattimen), joka tukahduttaa optimoinnin koko pisteen. Optimointi on poistettu käytöstä, kun muunto on tarpeen.
  • "git -c grep.patternType = laajennettu log -basic-regexp" väärin, koska sisäinen sovellusrajapinta grep-koneelle ei ollut suunniteltu hyvin.
  • Windows-portti epäonnistui joitain testejä t4130: ssa, koska palatut arvot puuttuivat sen lstat (2) emuloinnilla.
  • Tunnisteiden / refs-merkintöjen merkinnät, joita mainostetaan "gitweb-lähdössä", on nyt poistettu oikein, jotta HTML-tulostus onnistuu.
  • FreeBSD voi olla, kun kysytään hakemistosta mtime, joka aiheutti jäljittämättömän välimuistin koodin takaisin hitaalle polulle, mikä puolestaan ​​aiheutti testejä t7063: ssa epäonnistumaan, koska se halusi tarkistaa nopean polun käyttäytymisen.
  • Squelch-kääntäjän varoitukset netmalloc (compat /) -kirjastossa.
  • Haamupohjan API-dokumentaatio oli epäselvä, jos hashmap_entry voidaan turvallisesti hävittää ilman muita huomioita. Ilmoita, että se on turvallista.
  • Ei-niin äskettäinen uudelleen kirjoittaminen "git am": sta, joka alkoi tehdä sisäisiä puheluja sitoutumiskoneisiin, oli tahattomalla regressiolla, koska kuinka monta sekuntia se kesti useiden laastareiden käyttämiseen, tuloksena oleva sitoutunut aikaleima tuloksena olevaan sitoutumiseen olivat kaikki samoja.
  • Alihakemistossa alkanut "git difftool ..." ei onnistunut tulkitsemaan kyseiseen hakemistoon liittyviä polkuja.

Uutta versiossa 2.9.1:

  • Kun "git-daemonia" suoritetaan ilman - määriteltyä [init-] aikakatkaisua, yhteys hiljaisesti offline-tilassa olevalta asiakkaalta voi ryntää pitkään ja tuhlaa resursseja. Liitännätason KEEPALIVE on otettu käyttöön, jotta käyttöjärjestelmä voi havaita tällaiset epäonnistuneet yhteydet.
  • `Git log' -perheessä olevat komennot tekevät% C (auto) mukautetusta muotoisesta merkkijonosta. Tämä ehdottomasti kääntyi väriä, jättäen huomiotta - no-väri tai - väri = auto, kun lähtö ei ole kytketty tty; tämä on korjattu, jotta muoto todella toimisi "automaattisena".
  • "git rev-list --count", jonka kävelyn pituus on rajoitettu "-n" -vaihtoehdolla, ei toiminut hyvin bittikarttahakemistossa optimoidulla laskennalla.
  • "git-show -W" (laajentaa koko funktiota, jota rajaavat viivat, jotka vastaavat "funcname" -kuvaketta), jota käytetään koko tiedoston näyttämiseen, kun muutos lisäsi koko toimintoa tiedoston lopussa. on vahvistettu.
  • Dokumentaatiokokoelmia on päivitetty niin, että kirjaimelliset komennot, määritysmuuttujat ja ympäristömuuttujat ovat jatkuvasti kirjoitettuja kiinteäleveinä fonttina ja lihavoituna manuaalisissa sivuissa.
  • 2.3 päiväksi lisätty "git svn propset" -komitea on dokumentoitu nyt.
  • Dokumentaatiossa pyritään jatkuvasti kirjoittamaan "GPG"; kun viitataan nimenomaiseen ohjelman nimeen, käytetään "gpg".
  • "git reflog" pysähtyi näkemästä haaran luomistodennusta (aka "unborn") merkinnän, joka teki sen näyttävän siltä kuin reflog on katkennut.
  • Git-prompt-komentosarjat (in contrib /) eivät olleet ystävällisiä niille, jotka käyttävät "set-u", joka on korjattu.
  • Paketti, joka käytti allocaa (3) asettamaan rajoittamattoman määrän tietoja pinoon, on päivitetty välttääksesi näin.
  • "git update-index --add --chmod = + x-tiedosto" voi olla käyttökelpoinen paalupaikkana, mutta ei ystävällistä pakottaa ihmisiä, jotka tarvitsevat sitä säännöllisesti. "git add --chmod = + x tiedosto" voidaan käyttää sen sijaan.
  • Kehitä parannuksia gnome-avaimenperä (in contrib /)
  • "git-tila", jota käytettiin sanomalla "työhakemisto", kun se tarkoitti "työskentelypuuta".
  • Kommentteja FreeBSD-kuorien väärinkäytöstä on selvennetty versionumerolla (9.x ja ennen rikki, uudemmat ovat OK).
  • "Git cherry-pick A" työskenteli kasvamattomalla haaralla, mutta "git cherry-pick A..B" ei.
  • "git add -i / -p" on oppinut kunnioittamaan diff.compactionHeuristic-kokeilupainiketta, jotta käyttäjä voi työskennellä samalla hunk-jakamisella kuin "git diff" -lähtö.
  • "log --graph --format =" opetti, että "% & gt; | (N)" määrittää leveyden suhteessa päätteen vasempaan reunaan, ei suhteessa alueeseen, joka haluaa piirtää tekstin, joka on syntymän oikealla puolella -grafiikka. Se hyväksyy myös negatiivisen N: n, mikä tarkoittaa, että sarake on suhteessa oikeaan reunaan.
  • Muistissa oleva omistusoikeus, joka sisältää viittauksia "git fetch" -hakemistoon, oli ruuvi, joka on puhdistettu.
  • "git bisect" tekee sisäisen kutsun "git diff-tree": lle, kun bisection löytää syyllisen, mutta tämä puhelu ei alustanut datarakennetta siirtymään diff-tree-sovellusliittymään oikein.
  • Tietojen muodot (ja niiden vahvistaminen), joissa käytämme GPG-allekirjoitusta, on dokumentoitu.
  • Korjaa epätoivottu regression v2.9: ssä, joka rikkoo "subclodit", joka paljastuu submoduleihin pakottamalla submodulit myös kloonatuiksi matalasti, mistä useista palvelimista, jotka ovat isännöimättömiä moduuleista, ei ole varauduttu. / li>
  • Korjaa tarpeettomasti jätteet ": $ {VAR = oletusasetus" idiomaattiseen käyttöön asettaaksesi oletusarvon sulkematta sitä kaksoisotteleihin.
  • Joissakin alustekohtaisissa koodeissa oli ei-ANSI: n tiukat C-toiminnon ilmoitukset, jotka eivät korjaa mitään parametreja, jotka on korjattu.
  • Sisäinen koodi, jota käytetään paikallisen aikavyöhykkeen siirtymän näyttämiseen, ei ole valmis käsittelemään aikaleimat vuoden 2000 jälkeen ja antoi soittajalle väärän offset-arvon. Käytä enemmän hyväntahtoista etsintää +0000: n sijaan ja anna "git log" käydä tällaisessa tapauksessa sen sijaan, että se keskeytyy.
  • Testausalueellamme on luettu neljä lueetunnisteen (1) kutsua (1), jotta testi voidaan suorittaa järjestelmissä, joissa ei ole komentoa (toiset ovat valgrind-testissä ja t9802).
  • t / perf tarpeet / usr / bin / aika GNU-laajennuksella; sen kutsumus päivitetään "gtime": iin Darwiniin.
  • On korjattu bugi, joka aiheutti "git p4" -toiminnon ollessa suorassa versiossa raportoidaksesi polut, jotka jätetään pois haaran etuliitteen vuoksi virheellisesti. komento sanoi "Tiedoston ohittaminen etuliitteen ulkopuolelle" poluille, jotka ovat _inside _.
  • Huipputason dokumentaatio "git help git" viittasi edelleen asiakirjojen joukkoon, joka on isännöi nyt irronnut google-code-arkisto. Päivitä se napsauttamalla sen sijaan https://git.githubithio.com/htmldocs/git.html.

Uutta versiossa 2.9.0:



Uusi GIT 2.8.1 (5. huhtikuuta 2016)

Uutta versiossa 2.8.1:

  • "make rpmbuild" kohde rikkoontui sen syötteenä, git.spec.in, eikä sitä päivitetä vastaamaan tiedostoa, jota kuvataan, joka on äskettäin nimetty. Tämä on korjattu.

Uutta versio 2.7.3:

  • Perinteisesti testit, jotka yrittävät komentoja, jotka toimivat työpuun sisällössä, nimettiin "tiedusteluilla" tiedostonimityksissään, mutta viimeisimmän "git worktree" -komitean lisäämällä, joiden testit on nimetty myös vastaavalla tavalla, se on on vaikeampaa kertoa heille erilleen. Perinteiset testit on nimetty käyttämään "työpuuta" sen sijaan, että yritettäisiin erottaa ne.
  • Monet koodipatsaat unohtavat tarkista palautusarvon git_config_set (); toiminto tehdään kuolemaan () varmistaaksesi, ettemme edisty, kun määritysmuuttuja asetetaan epäonnistui.
  • Virheiden käsitteleminen kirjoitettaessa sisäiseen asynkroniseen prosessiin on tehostettu, mikä vähentää epävakaisuutta testeissä.
  • "git-show" HEAD: Foo [BAR] Baz '"ei tulkannut argumenttia rev: ksi, eli objektin, jonka polvin nimi on jokerimerkkiin puuobjektissa.

  • Interaktiivisen "git am -i" -komennon "v (iew)" alikomento hajotettiin 2.6.0 aikajaksolla, kun komento kirjoitettiin uudelleen C: ssä.
  • "Git-yhdistys-puu", jota käytetään väärinkäyttämällä "molemmat osapuolet lisätään" ristiriidassa omien kanssa "luo väärennetty esi-tiedosto, jolla on yhteiset osat molempien osapuolten lisäyksistä ja 3-tie-yhdistämisen logiikka; tämä on päivitetty käyttämään tavanomaista "3-tie yhdistämistä tyhjään möykkyyn väärennetyksi yhteiseksi esi-asiakirjaksi", jota käytetään muussa järjestelmässä.
  • Täysin hankalaa fill_textconv () API: n muistiomistussääntöä on dokumentoitu hieman paremmaksi.
  • Dokumentaatiossa ei ole selvää, että "yksinkertainen" -moodi on nyt oletusarvo "git push" -toiminnolle, kun push.default -asetusta ei ole asetettu.
  • GNU: n viimeisimmät versiot ovat pikemminkin pienempiä, kun niiden syöttö sisältää mielivaltaisia ​​binaaritietoja, joita jotkut testit käyttävät. Kirjoita uudelleen testit ongelman välttämiseksi.
  • Apuritoiminto "git submodule" käyttää sen jälkeen, kun v2.7.0 on lueteltu moduulit, jotka vastaavat sen alikomentoille annettuja polkupec-argumentteja (esim. "submodule add").
  • "git config section.var-arvon" asettaminen arvoon per-repository -asetustiedostossa epäonnistui, kun se suoritettiin jonkin arkiston ulkopuolella, mutta se ei sanonut syytä oikein.
  • Pakkaustietojen lukemiseen käytetyn koodin avulla paketin idx-tiedostoon tallennettuja offsettejä on tarkistettu tarkemmin datan voimassaoloon idxissä.

Uutta versio 2.7.2:

  • Matalan tason sulautumiskoneita on opetettu käyttämään CRLF-linjan lopettamista lisäämällä konfliktitunnistimia yhdistettyihin sisältöihin, jotka ovat itse CRLF-linjan päättyneitä.
  • "git worktree" oli rikkoutunut koodi, joka yritti räätälöidä mahdollisen epäjohdonmukaisuuden, joka johtuu siitä, että loppukäyttäjät siirtävät työpöytää eri paikkoihin sanomatta Gitia (alkuperäisen arkiston pitää ylläpitäjiä palata takaisin, mutta "mv" jotka eivät tunne tätä seikkaa, eivät tietenkään sovi niitä), mikä oikeastaan ​​pahasti laukaisi.
  • "Git push --force-with-lease" on opettanut ilmoittamaan, onko push pakollinen (tai pikakelaus) pakollinen.
  • Testiohjelmoissamme käytettyä emuloitua "kyllä" -komentoa on muokattu siten, että se ei käytä liikaa aikaa tuottamaan tarpeettomia tuotoksia, joita ei käytetä, auttamaan niitä, jotka testaavat Windowsia, jolloin se ei pysähdy, ennen kuin se täyttää putkipuskuroinnin SIGPIPE: n puuttuessa.
  • Vimdiffin "git mergetool" -hakemistoa on muokattu järjestämään ja numeroimalla puskureita järjestyksessä, joka vastaisi enemmistön vasemmalle oikealle lukemista, sitten ylhäältä alas ja antaa puskurit 1 2 3 4 "henkisesti" paikalliseen tukiasemaan sulautuvat ikkunat, jotka perustuvat tähän järjestykseen.
  • "git clean" -asiakirjat on korjattu; se totesi, että .git / modules / * poistetaan antamalla kaksi "-f", joka ei ole koskaan tapahtunut.
  • Reitit, jotka on kerrottu indeksin "add-N" kanssa, eivät ole vielä varsinaisesti indeksissä, mutta muutamat komennot käyttäytyvät ikään kuin ne ovat haitallisella tavalla.
  • Sisältää myös pieniä dokumentaatio- ja testipäivityksiä.

Uutta versiossa 2.6.4:

  • Konfiguroi käsikirjoitus ei testannut -lpthreadiä oikein, mikä järkyttää joitain linkkereitä.
  • Lisää tuki puhuttavan http / httpsin yli sukkaprosessorin välityksellä.
  • Siirrettävyyskorjaus Windowsille, joka voi kirjoittaa $ SHELL -muuttujan muille kuin POSIX-poluille.
  • Tällöin johdonmukaisesti sallitaan, että kaikki koukut jättävät huomiotta tavallisen panoksensa, sen sijaan että Git valittaa SIGPIPE: stä.
  • Korjaa kuori, joka mainitaan kirjoituskoodissa.
  • Testaa siirrettävyys korjata aiheessa v2.6.1.
  • Salli tilde-laajennus joihinkin http-määritysmuuttujista.
  • Anna hyödyllinen erikoistapaus "diff / show --word-diff-regex =." esimerkkinä dokumentaatiosta.
  • Korjaa kulmakotelo suodatinhaarassa.
  • Tee git-p4: stä irrotettu pää.
  • Dokumentaation selvennys "tarkistamatta jättäminen" ilman "--verbose".
  • Työpuu on puhdistettu, kun käyttäjä peruuttaa lähetyksen P4Submit.applyCommit () -palvelussa, siivota sotku, jos "p4 submit" epäonnistuu.
  • Jäljellä oleva .idx-tiedosto ilman vastaavaa .pack-tiedostoa arkistossa sattuu suorituskyky; "git gc" oppi leimaamaan ne.
  • "Dir-diff" -ominaisuuden tilapäisen hakemiston työpuupuoleisen koodin ansiosta unohdettiin, että symbolisia linkkejä ei tarvitse kopioida (tai yhdistää) tilapäiseen alueeseen, koska koodi on jo erikoistapauksia ja se on korvattu niitä. Lisäksi oli väärin kokeilla symbolisen linkin tavoitteen objektin nimeämistä, joka ei välttämättä ole olemassa tai voi olla hakemisto.
  • Määritettyä rebase.autostash-muuttujaa ei voitu voittaa komentoriviltä, ​​koska "git rebase --no-autostash" puuttui.
  • Salli "Git-tulkkien jäljitelmät" Git-arkiston ulkopuolelle.
  • Tuo oikea "likainen" merkintä kuoriherkkeihin, vaikka olisimme orvoissa tai luuttomassa haarassa.
  • Jotkut kulma-asiat on kiinnitetty "git-tilaan" tehdyllä merkkijonolla.
  • SHA1_Update (): n Applen yhteinen kryptointitoiminto ei vie yli 4 gigatavua kerrallaan, ja meillä on nyt käännöstyökalu.

Uutta versiossa 2.5.3:

  • Koekäyttämättömät-välimuistitoiminnot olivat vikoja, kun polkuja, joissa on muutamia alihakemistoja, on mukana.
  • Uusimmat versiot "git am" -ohjelmistolla ovat suorituskyvyn regressiota "git am --skip" -koodipatsauksessa, joka ei enää ole sisäänrakennetussa versiossa "pääosassa". Korjaa regressio viimeisimmässä ohjelmistetussa versiossa, joka näkyy 2.5.x-huollossa ja vanhemmissa.

Uutta versiossa 2.4.6:

  • "git fetch --depth =" ja "git clone --depth =" antoivat matalan siirtopyynnön jopa sellaiselle latauspaketille, joka ei tue ominaisuutta.
  • "git fsck", jota käytetään jättämättömissä tai virheellisissä kohteissa, jotka on tallennettu palautuslogiin.
  • Tcsh-täydennys kirjoittaa bash-komentosarjat, mutta se olisi epäonnistunut käyttäjille, joilla on noclobber set.
  • Viimeisimmät Mac OS X -päivitykset katkaisevat logiikan havaitsemaan, että kone on virtalähteessä esiasennetussa automaattisessa gc-komentosarjassa.
  • "git-muoto-patch -ignore-if-upstream A..B" ei pidä syöttää tunnisteita rajojen mukaan.
  • Sisältää myös typofixejä, dokumentaation päivityksiä ja triviaaleja koodeja
  • siivouksen.

Uutta versiossa 2.4.2:

  • "git rev-list --objects $ old --not --all" onko kaikki, joka on tavoitettavissa $ oldista jo yhdistetty olemassa oleviin tiedostoihin, oli erittäin tehoton.
  • v.2.2: ssa esittämä "hash-objekti -listan" ei ollut valmis ottamaan todella pitkää objektityyppiä.
  • "git rebase - hiljainen" ei ollut varsin hiljainen, kun ei ole mitään tekemistä.
  • "log --decorate =" -parametriarvon loppu oli virheellinen.
  • "suodatinhaara" vioittunut lokitiedote, joka päättyy epätäydellisellä rivillä alustoilla, joissa on joitain "sed" -sovelluksia, joissa tällainen viiva on. Työskentele sen ympärillä välttäen käyttämään "sed".
  • "git daemon" ei ymmärrä lähteestä NO_IPV6-määrityksessä (regressio 2.4).
  • "git stash pop / apply" unohti varmistamaan, ettei vain työpuu ole puhdas, mutta indeksi on myös puhdas. Jälkimmäinen on tärkeä, koska salakirjoitussovellus voi olla ristiriidassa ja indeksiä käytetään konfliktinratkaisuun.
  • Olemme lisänneet $ GIT_EXEC_PATH: n ja polku "git" on asennettu (tyypillisesti "/ usr / bin") $ PATH: iin, kun kutsutaan aliohjelmia ja koukkuja lähes ikuisesti. Alkuperäinen käyttötapa, jota jälkimmäinen yritti tukea, -bogus (eli asenna git / opt / foo / git ja suorita se ilman $ optimaalua / opt / foo $ PATH: lla) ja mikä tärkeintä, siitä on tullut vähemmän tärkeä, koska Git kasvoi enemmän valtavirtaa (eli käyttäjät haluaisivat se niiden $ PATH). Pysäytä eteenpäin polku, jossa "git" on asennettu käyttäjien $ PATH -ohjelmaan, koska se häiritsisi komentojen haun järjestystä, jonka ihmiset ovat riippuvaisia ​​(esim. He eivät pidä sellaisten ohjelmien versiota, jotka eivät liity Git: iin / usr / bin: ssä ja haluavat ohittaa heidät käyttämällä erilaisia ​​/ usr / local / bin ja heillä on jälkimmäinen hakemisto aikaisemmin $ PATH: ssa.)
  • Sisältää myös typofixejä, dokumentaation päivityksiä ja triviaaleja koodin puhdistuksia.

Vastaavia ohjelmistoja

SmartGit/Hg
SmartGit/Hg

16 Aug 18

GHTix
GHTix

14 Apr 15

hg-git
hg-git

20 Feb 15

Kommentit GIT

Kommentteja ei löytynyt
Lisää kommentti
Ota kuvia!