GIT

Screenshot Software:
GIT
Mga detalye ng Software:
Bersyon: 2.16.0 Na-update
I-upload ang petsa: 20 Jan 18
Nag-develop: Junio C Hamano
Lisensya: Libre
Katanyagan: 64

Rating: 3.0/5 (Total Votes: 1)

Git ay isa sa mga pinaka-tinatanggap na ginamit na mga sistema ng bersyon ng kontrol, na inilarawan ng mga developer sa buong mundo bilang ang bilang isang serbisyo ng VCS. Ito ay tumatakbo lamang mula sa terminal, ngunit maraming front-ends ang magagamit para sa pag-download.

Ito ay isang libreng at bukas na pinagmulan ng bersyon ng application ng sistema ng kontrol na maaaring hawakan ang parehong malaki at maliit na mga proyekto na may pinakamataas na kahusayan at bilis. Ang programa ay maaaring madaling ilarawan bilang maliit, mabilis at ipinamamahagi.


Mga pagpipilian sa command line

Ang programa ay may ilang mga utos na madaling maaalala ng sinuman mula sa get-go. Ang lahat ng operasyon ay ginaganap sa isang lugar, at na-engineered upang gumana sa kernel ng Linux.

Kasamang mga command ay idagdag, bisect, branch, checkout, clone, commit, diff, fetch, grep, init, log, merge, mv, pull, push, rebase, reset, rm, show, status, and tag. Madali mong matutunan kung ano ang ginagawa ng bawat command sa pamamagitan ng pagpapatakbo ng git --help na utos mula sa isang terminal window.


Mga tampok sa isang sulyap
Kapag gumagamit ng Git, makakapagdaragdag ang mga user ng mga file, mga sanga ng checkout o mga landas, i-clone ang mga repository, lumikha ng mga walang laman na Repitory ng Git, sumali sa maraming kasaysayan ng pag-unlad, ipakita ang kalagayan ng nagtatrabaho puno, mga pagbabago ng rekord, pati na rin upang lumikha, maglista o tanggalin ang mga sanga.

Bilang karagdagan, pinapayagan ng application ang mga user na tingnan ang mga pagbabago sa pagitan ng mga gumagawa at mga gumaganang puno, i-print ang mga linya na tumutugma sa isang pattern, tingnan ang mga log ng gumawa, i-download ang mga ref at mga bagay, palitan ang pangalan o ilipat ang mga file, mga symlink at direktoryo, i-update ang remote na ref, at alisin mga file mula sa gumaganang puno.


May iba't ibang graphical front-ends na umiiral
Kahit na ito ay isang software lamang na command-line, iba't ibang graphical user interface (GUI) ay magagamit, kabilang ang git-cola, SmartGit, GitEye, giggle, at gitg. Ang proyekto ay outclasses SCM (Software Configuration Management) utilities, tulad ng CVS, Subversion, ClearCase, at Perforce, sa pamamagitan ng pagkakaroon ng murang lokal na pagsasanib, maraming mga daloy ng trabaho, at maginhawang pagtatanghal ng lugar.


Ibabang linya

Summing up, Git ay isang libreng bersyon ng sistema ng kontrol na nagtatampok ng mabilis na pagganap ng kidlat, madali itong matutunan, at may napakaliit na bakas ng paa. Sa Git, maaari mong gawin ang paglipat ng konteksto ng hindi pagkilos, mga linya ng code na nakabatay sa papel, tampok na workflow na nakabatay sa trabaho, at hindi na eksperimentasyon.

Ano ang bagong sa paglabas na ito:

  • Ang isang function ng helper na basahin ang isang solong buong linya sa strbuf nagkakamali na nag-trigger OOM error sa EOF sa ilalim ng ilang mga kundisyon, na naayos na.
  • Bilang karagdagan sa & quot; cc: # cruft & quot ;, & quot; cc: a@dd.re.ss # cruft & quot; ay itinuro sa & quot; git send-email & quot; bilang wastong paraan upang sabihin ito na kailangan din nito na magpadala ng carbon copy sa seksyon ng trailer.
  • Ayusin ang pagbabalik sa & quot; gitk --bisect & quot; sa pamamagitan ng isang kamakailang pag-update.
  • Hindi tulad ng & quot; git commit-tree & lt; file & quot ;, & quot; git commit-tree -F file & quot; ay hindi pumasa sa mga nilalaman ng verbatim ng file at sa halip ay nakumpleto ang isang hindi kumpletong linya sa dulo, kung mayroon. Na-update ang huli upang tumugma sa pag-uugali ng dating.
  • & quot; git archive & quot;, lalo na kapag ginamit sa pathspec, nakaimbak ng isang walang laman na direktoryo sa output nito, kahit na ang Git mismo ay hindi kailanman nagagawa. Naayos na ito.
  • API-proofing ng API na nangyayari rin sa mga alerto mula sa GCC.
  • & quot; git gc & quot; ay sumusubok na maiwasan ang pagpapatakbo ng dalawang pagkakataon sa parehong oras sa pamamagitan ng pagbabasa at pagsusulat ng pid / host mula sa at sa isang lock file; ginamit ito upang gumamit ng hindi tamang format na fscanf () kapag nagbabasa, na naitama.
  • Ang test linter ay itinuro na hindi namin gusto ang & quot; echo -e & quot;.
  • Code cmp.std.c nitpick.
  • & quot; git ilarawan --match & quot; natutunan na kumuha ng maramihang mga pattern sa v2.13 serye, ngunit ang tampok na binabalewala ang mga pattern pagkatapos ng unang isa at hindi gumagana sa lahat. Naayos na ito.
  • & quot; git cat-file --textconv & quot; nagsimula segfaulting kamakailan, na naitama.
  • Ang built-in na pattern upang makita ang & quot; header ng function & quot; para sa HTML ay hindi tumutugma .. mga elemento nang walang anumang mga katangian, na naayos na.
  • & quot; git mailinfo & quot; ay hindi kabit-kabit sa pag-decode na naka-print at gumawa ng basura kapag ang dalawang titik pagkatapos ng pantay na pag-sign ay hindi hexadecimal. Naayos na ito.
  • Ang dokumentasyon para sa '-X' para sa mga merge ay maliwanag na isinulat upang magmungkahi na ang & quot; -s kanila & quot; umiiral, na hindi ito ang kaso.
  • I-spell ang pangalan ng aming system bilang & quot; Git & quot; sa output mula sa request-pull script.
  • Pag-aayos para sa isang maliit na isyu sa pag-access sa memory na tinukoy ng valgrind.
  • Ang backport ay isang katumbas na moral ng 2015 na pag-aayos sa pagtulad ng poll mula sa upstream gnulib upang ayusin ang mga paminsan-minsang pagkasira sa HPE NonStop.
  • Sa & quot; - format = ... & quot; opsyon ng & quot; git para-bawat-ref & quot; command (at mga kaibigan nito, io ang mode ng listahan ng & quot; git sangay / tag & quot;), & quot;% (atom:) & quot; (hal. & quot;% (refname:) & quot ;, & quot;% (katawan:) & quot; na ginamit sa error sa labas.
  • Mga gumagamit na may & quot; color.ui = laging & quot; sa kanilang configuration ay nasira sa pamamagitan ng isang kamakailan-lamang na pagbabago na ginawa utos ng pagtutuos upang bigyang-pansin ang mga ito bilang ang patch na nilikha sa loob ng & quot; git add -p & quot; ay kulay (heh) at ginawa hindi magamit. Naayos na ito.
  • & quot; git branch -M a b & quot; samantalang sa isang sangay na ganap na walang kaugnayan sa alinman sa sangay ng isang o sangay na nag-aalala kapag ang maramihang mga worktree ay ginagamit. Naayos na ito.
  • & quot; git mabilis-export & quot; na may -M / -C na ibinigay na & quot; kopya & quot; pagtuturo sa isang landas na sabay-sabay na binago, na hindi tama.
  • Ang checkpoint command & quot; git fast import & quot; hindi nag-flush ang mga update sa mga refs at mga marka maliban kung hindi bababa sa isang bagay ang nalikha mula noong huling checkpoint, na naitama, dahil ang mga bagay na ito ay maaaring mangyari nang walang anumang bagong bagay na nakalikha.
  • Ang mga script para magmaneho ng TravisCI ay muling inorganisa at pagkatapos ay isang pag-optimize upang maiwasan ang paggasta sa mga sanga sa isang branch na ang tag ay na-tag ay naipatupad.

  • & quot; git fetch: & quot; nagpapahintulot sa isang pangalan ng pangalan sa gilid kapag ang iba pang mga bahagi ay tumatanggap ng naturang kahilingan mula noong Git v2.5, ngunit ang dokumentasyon ay naiwan na lipas.
  • Ang isang pagbabalik sa 2.11 na ginawa ng code upang mabasa ang listahan ng mga kahaliling mga bagay na pang-imbak sa paglipas ng pagtatapos ng string ay naayos na.

Ano ang bago sa bersyon 2.15.1:

  • Ang isang function ng helper na basahin ang isang solong buong linya sa strbuf nagkakamali na nag-trigger OOM error sa EOF sa ilalim ng ilang mga kundisyon, na naayos na.
  • Bilang karagdagan sa & quot; cc: # cruft & quot ;, & quot; cc: a@dd.re.ss # cruft & quot; ay itinuro sa & quot; git send-email & quot; bilang wastong paraan upang sabihin ito na kailangan din nito na magpadala ng carbon copy sa seksyon ng trailer.
  • Ayusin ang pagbabalik sa & quot; gitk --bisect & quot; sa pamamagitan ng isang kamakailang pag-update.
  • Hindi tulad ng & quot; git commit-tree & lt; file & quot ;, & quot; git commit-tree -F file & quot; ay hindi pumasa sa mga nilalaman ng verbatim ng file at sa halip ay nakumpleto ang isang hindi kumpletong linya sa dulo, kung mayroon. Na-update ang huli upang tumugma sa pag-uugali ng dating.
  • & quot; git archive & quot;, lalo na kapag ginamit sa pathspec, nakaimbak ng isang walang laman na direktoryo sa output nito, kahit na ang Git mismo ay hindi kailanman nagagawa. Naayos na ito.
  • API-proofing ng API na nangyayari rin sa mga alerto mula sa GCC.
  • & quot; git gc & quot; ay sumusubok na maiwasan ang pagpapatakbo ng dalawang pagkakataon sa parehong oras sa pamamagitan ng pagbabasa at pagsusulat ng pid / host mula sa at sa isang lock file; ginamit ito upang gumamit ng hindi tamang format na fscanf () kapag nagbabasa, na naitama.
  • Ang test linter ay itinuro na hindi namin gusto ang & quot; echo -e & quot;.
  • Code cmp.std.c nitpick.
  • & quot; git ilarawan --match & quot; natutunan na kumuha ng maramihang mga pattern sa v2.13 serye, ngunit ang tampok na binabalewala ang mga pattern pagkatapos ng unang isa at hindi gumagana sa lahat. Naayos na ito.
  • & quot; git cat-file --textconv & quot; nagsimula segfaulting kamakailan, na naitama.
  • Ang built-in na pattern upang makita ang & quot; header ng function & quot; para sa HTML ay hindi tumutugma .. mga elemento nang walang anumang mga katangian, na naayos na.
  • & quot; git mailinfo & quot; ay hindi kabit-kabit sa pag-decode na naka-print at gumawa ng basura kapag ang dalawang titik pagkatapos ng pantay na pag-sign ay hindi hexadecimal. Naayos na ito.
  • Ang dokumentasyon para sa '-X' para sa mga merge ay maliwanag na isinulat upang magmungkahi na ang & quot; -s kanila & quot; umiiral, na hindi ito ang kaso.
  • I-spell ang pangalan ng aming system bilang & quot; Git & quot; sa output mula sa request-pull script.
  • Pag-aayos para sa isang maliit na isyu sa pag-access sa memory na tinukoy ng valgrind.
  • Ang backport ay isang katumbas na moral ng 2015 na pag-aayos sa pagtulad ng poll mula sa upstream gnulib upang ayusin ang mga paminsan-minsang pagkasira sa HPE NonStop.
  • Sa & quot; - format = ... & quot; opsyon ng & quot; git para-bawat-ref & quot; command (at mga kaibigan nito, io ang mode ng listahan ng & quot; git sangay / tag & quot;), & quot;% (atom:) & quot; (hal. & quot;% (refname:) & quot ;, & quot;% (katawan:) & quot; na ginamit sa error sa labas.
  • Mga gumagamit na may & quot; color.ui = laging & quot; sa kanilang configuration ay nasira sa pamamagitan ng isang kamakailan-lamang na pagbabago na ginawa utos ng pagtutuos upang bigyang-pansin ang mga ito bilang ang patch na nilikha sa loob ng & quot; git add -p & quot; ay kulay (heh) at ginawa hindi magamit. Naayos na ito.
  • & quot; git branch -M a b & quot; samantalang sa isang sangay na ganap na walang kaugnayan sa alinman sa sangay ng isang o sangay na nag-aalala kapag ang maramihang mga worktree ay ginagamit. Naayos na ito.
  • & quot; git mabilis-export & quot; na may -M / -C na ibinigay na & quot; kopya & quot; pagtuturo sa isang landas na sabay-sabay na binago, na hindi tama.
  • Ang checkpoint command & quot; git fast import & quot; hindi nag-flush ang mga update sa mga refs at mga marka maliban kung hindi bababa sa isang bagay ang nalikha mula noong huling checkpoint, na naitama, dahil ang mga bagay na ito ay maaaring mangyari nang walang anumang bagong bagay na nakalikha.
  • Ang mga script para magmaneho ng TravisCI ay muling inorganisa at pagkatapos ay isang pag-optimize upang maiwasan ang paggasta sa mga sanga sa isang branch na ang tag ay na-tag ay naipatupad.

  • & quot; git fetch: & quot; nagpapahintulot sa isang pangalan ng pangalan sa gilid kapag ang iba pang mga bahagi ay tumatanggap ng naturang kahilingan mula noong Git v2.5, ngunit ang dokumentasyon ay naiwan na lipas.
  • Ang isang pagbabalik sa 2.11 na ginawa ng code upang mabasa ang listahan ng mga kahaliling mga bagay na pang-imbak sa paglipas ng pagtatapos ng string ay naayos na.

Ano ang bago sa bersyon 2.15.0:

  • Ang isang function ng helper na basahin ang isang solong buong linya sa strbuf nagkakamali na nag-trigger OOM error sa EOF sa ilalim ng ilang mga kundisyon, na naayos na.
  • Bilang karagdagan sa & quot; cc: # cruft & quot ;, & quot; cc: a@dd.re.ss # cruft & quot; ay itinuro sa & quot; git send-email & quot; bilang wastong paraan upang sabihin ito na kailangan din nito na magpadala ng carbon copy sa seksyon ng trailer.
  • Ayusin ang pagbabalik sa & quot; gitk --bisect & quot; sa pamamagitan ng isang kamakailang pag-update.
  • Hindi tulad ng & quot; git commit-tree & lt; file & quot ;, & quot; git commit-tree -F file & quot; ay hindi pumasa sa mga nilalaman ng verbatim ng file at sa halip ay nakumpleto ang isang hindi kumpletong linya sa dulo, kung mayroon. Na-update ang huli upang tumugma sa pag-uugali ng dating.
  • & quot; git archive & quot;, lalo na kapag ginamit sa pathspec, nakaimbak ng isang walang laman na direktoryo sa output nito, kahit na ang Git mismo ay hindi kailanman nagagawa. Naayos na ito.
  • API-proofing ng API na nangyayari rin sa mga alerto mula sa GCC.
  • & quot; git gc & quot; ay sumusubok na maiwasan ang pagpapatakbo ng dalawang pagkakataon sa parehong oras sa pamamagitan ng pagbabasa at pagsusulat ng pid / host mula sa at sa isang lock file; ginamit ito upang gumamit ng hindi tamang format na fscanf () kapag nagbabasa, na naitama.
  • Ang test linter ay itinuro na hindi namin gusto ang & quot; echo -e & quot;.
  • Code cmp.std.c nitpick.
  • & quot; git ilarawan --match & quot; natutunan na kumuha ng maramihang mga pattern sa v2.13 serye, ngunit ang tampok na binabalewala ang mga pattern pagkatapos ng unang isa at hindi gumagana sa lahat. Naayos na ito.
  • & quot; git cat-file --textconv & quot; nagsimula segfaulting kamakailan, na naitama.
  • Ang built-in na pattern upang makita ang & quot; header ng function & quot; para sa HTML ay hindi tumutugma .. mga elemento nang walang anumang mga katangian, na naayos na.
  • & quot; git mailinfo & quot; ay hindi kabit-kabit sa pag-decode na naka-print at gumawa ng basura kapag ang dalawang titik pagkatapos ng pantay na pag-sign ay hindi hexadecimal. Naayos na ito.
  • Ang dokumentasyon para sa '-X' para sa mga merge ay maliwanag na isinulat upang magmungkahi na ang & quot; -s kanila & quot; umiiral, na hindi ito ang kaso.
  • I-spell ang pangalan ng aming system bilang & quot; Git & quot; sa output mula sa request-pull script.
  • Pag-aayos para sa isang maliit na isyu sa pag-access sa memory na tinukoy ng valgrind.
  • Ang backport ay isang katumbas na moral ng 2015 na pag-aayos sa pagtulad ng poll mula sa upstream gnulib upang ayusin ang mga paminsan-minsang pagkasira sa HPE NonStop.
  • Sa & quot; - format = ... & quot; opsyon ng & quot; git para-bawat-ref & quot; command (at mga kaibigan nito, io ang mode ng listahan ng & quot; git sangay / tag & quot;), & quot;% (atom:) & quot; (hal. & quot;% (refname:) & quot ;, & quot;% (katawan:) & quot; na ginamit sa error sa labas.
  • Mga gumagamit na may & quot; color.ui = laging & quot; sa kanilang configuration ay nasira sa pamamagitan ng isang kamakailan-lamang na pagbabago na ginawa utos ng pagtutuos upang bigyang-pansin ang mga ito bilang ang patch na nilikha sa loob ng & quot; git add -p & quot; ay kulay (heh) at ginawa hindi magamit. Naayos na ito.
  • & quot; git branch -M a b & quot; samantalang sa isang sangay na ganap na walang kaugnayan sa alinman sa sangay ng isang o sangay na nag-aalala kapag ang maramihang mga worktree ay ginagamit. Naayos na ito.
  • & quot; git mabilis-export & quot; na may -M / -C na ibinigay na & quot; kopya & quot; pagtuturo sa isang landas na sabay-sabay na binago, na hindi tama.
  • Ang checkpoint command & quot; git fast import & quot; hindi nag-flush ang mga update sa mga refs at mga marka maliban kung hindi bababa sa isang bagay ang nalikha mula noong huling checkpoint, na naitama, dahil ang mga bagay na ito ay maaaring mangyari nang walang anumang bagong bagay na nakalikha.
  • Ang mga script para magmaneho ng TravisCI ay muling inorganisa at pagkatapos ay isang pag-optimize upang maiwasan ang paggasta sa mga sanga sa isang branch na ang tag ay na-tag ay naipatupad.

  • & quot; git fetch: & quot; nagpapahintulot sa isang pangalan ng pangalan sa gilid kapag ang iba pang mga bahagi ay tumatanggap ng naturang kahilingan mula noong Git v2.5, ngunit ang dokumentasyon ay naiwan na lipas.
  • Ang isang pagbabalik sa 2.11 na ginawa ng code upang mabasa ang listahan ng mga kahaliling mga bagay na pang-imbak sa paglipas ng pagtatapos ng string ay naayos na.

Ano ang bago sa bersyon 2.14.1:

  • Ang paglulunsad na ito ng forward-port ng fix para sa & quot; ssh: // ..." URL mula sa Git v2.7.6

Ano ang bago sa bersyon 2.9.3:

  • * Ang isang function na helper na tumatagal ng mga nilalaman ng isang bagay ng gumawa at hahanapin ang linya ng paksa ay hindi binabalewala ang mga nangungunang blangko na linya, tulad ng karaniwang ginagawa ng iba pang mga codepath. Huwag ipagwalang-bahala ang mga nangungunang blangko na linya upang tumugma.
  • Hindi alam ng Git kung anong mga nilalaman sa index ang dapat para sa path na idinagdag sa "git add -N" pa, kaya "git grep - naka-cache" ay hindi dapat magpakita ng mga hit (o magpakita ng kakulangan ng mga hit, na may -L ) sa gayong landas, ngunit ang lohika na iyon ay hindi nalalapat sa "git grep", ibig sabihin, naghahanap sa mga file ng gumaganang puno. Ngunit ginawa namin ito nang hindi sinasadya, na naitama.
  • "git rebase -i --autostash" ay hindi pinanumbalik ang awtomatikong na-stashed na pagbabago kapag ang operasyon ay naurong.

  • Ang "git commit --amend --allow-empty-message -S" para sa isang gumawa nang walang anumang katawan ng mensahe ay maaaring hindi nakilala ang kung saan ang header ng bagay na pangako ay nagtatapos.
  • Higit pang mga pag-update ng markup sa mga uri ng mga string na inaasahang literal na nai-type ng end user sa fixed-width na font.
  • Sa loob ng mahabang panahon, nagdala kami ng in-code na komento na nagsabi na ang aming kulay na output ay gagana lamang kapag ginagamit namin ang fprintf / fputs sa Windows, na hindi na ang kaso sa nakalipas na mga taon.
  • "gc.autoPackLimit" kapag naka-set sa 1 ay hindi dapat magpalitaw ng isang repacking kapag may isang pakete lamang, ngunit ang code ay hindi gaanong binibilang at ginawa ito.
  • Ang isang bahagi ng "git am" ay may isang function ng katulong na tinatawag na mga bagay mula sa labas ng "kanyang" bilang kabaligtaran sa pagtawag sa kung ano ang mayroon tayo "atin", na hindi neutral sa gender at hindi rin naaayon sa natitirang bahagi ng sistema kung saan Sa labas ng mga bagay-bagay ay usuall tinatawag na "kanila" sa kaibahan sa "atin".
  • Ang balangkas ng pagsubok ay natutunan ng isang bagong helper test_match_signal upang suriin ang isang exit code mula sa pagkuha ng pinatay sa pamamagitan ng inaasahang signal.
  • "git sisihin -M" hindi nakuha ang isang linya na inilipat sa loob ng file.
  • Ayusin ang kamakailan-lamang na ipinakilala codepaths na kasangkot sa mga parallel na pagpapatakbo ng submodule, na sumuko sa pagbabasa masyadong maaga, at maaaring magkaroon ng nasayang na CPU habang sinusubukang sumulat sa ilalim ng kalagayan ng sulok kaso.
  • "git grep -i" ay tinuturuan na tiklop ang kaso sa tama ng mga lokal na hindi pang-ascii.
  • Isang pagsubok na ginamit nang walang kondisyon na "mktemp" ang natutunan na ang utos ay hindi kinakailangang magamit saanman.
  • Pinagkalooban ng "git blame file" ang lineage ng mga linya sa uncommitted, unadded na nilalaman ng "file" upang ma-inspeksyon, ngunit tumanggi ito kapag ang "file" ay hindi lumitaw sa kasalukuyang gumawa. Kapag ang "file" ay nilikha sa pamamagitan ng pagpapalit ng pangalan ng isang umiiral na file (ngunit ang pagbabago ay hindi pa nakatuon), ang paghihigpit na ito ay hindi kinakailangan nang mahigpit.
  • "git add -N dir / file & amp; & amp; write write-tree" ay gumawa ng isang hindi tamang puno kapag may iba pang mga landas sa parehong direktoryo na masama pagkatapos ng "file".
  • "git fetch http: // user: pass @ host / repo ..." scrubbed the userinfo part, pero "git push" ay hindi.
  • Ang isang lumang edad na bug na naging sanhi ng "git diff --ignore-space-at-eol" na gawaing malay ay naayos.
  • "sumulat ang git ng git" ay may isang code upang makita kung ang isang path ay umiiral (at nabigo kung ito ay) at pagkatapos ay buksan ang landas para sa pagsusulat (kapag hindi). Palitan ito nang bukas sa O_EXCL.

  • Ang "git pack-objects" at "git index-pack" ay kadalasang nagpapatakbo sa off_t kapag binabanggit ang tungkol sa offset ng mga bagay sa isang packfile, ngunit may ilang mga lugar na ginamit na "unsigned long" upang i-hold ang halaga na sa isang hindi nilalayong pagtanggal.
  • Ang kamakailang pag-update sa "git daemon" ay sinusubukan na paganahin ang socket-level KEEPALIVE, ngunit kapag ito ay spawned sa pamamagitan ng inetd, ang standard input file descriptor ay maaaring hindi kinakailangang nakakonekta sa isang socket. Sumpain ang isang ENOTSOCK na error mula sa setsockopt ().
  • Nagtigil ang kamakailang FreeBSD sa paggawa ng perl magagamit sa / usr / bin / perl; lumipat sa default ang built-in na landas sa / usr / local / bin / perl sa hindi masyadong sinaunang paglulunsad ng FreeBSD.

  • Natutunan ng "git status" na magmungkahi ng "merge --abort" sa panahon ng isang magkasalungat na sumanib, tulad ng nagpapahiwatig na ito na "rebase --abort" sa isang nagkakasalungat na rebase.
  • Ang mga .c / .h pinagmumulan ay minarkahan bilang tulad sa aming .gitattributes file upang ang "git diff -W" at mga kaibigan ay gagana nang mas mahusay.
  • Ang umiiral na autoconf na binuo ng pagsubok para sa pangangailangan na mag-link sa pthread library ay hindi sumuri sa lahat ng mga pag-andar mula sa mga library na pthread; ang mga kamakailan-lamang na FreeBSD ay may ilang mga pag-andar sa libc ngunit hindi iba, at nagkamali naming naisip na ang pag-link sa libc ay sapat na kapag ito ay hindi.
  • Pahintulutan ang mga pagsusulit ng http daemon sa mga pagsubok ng Travis CI.
  • Ang mga gumagamit ng parse_options_concat () API function ay kailangang maglaan ng karagdagang mga puwang nang maaga at punan ang mga ito ng OPT_END () kapag gusto nilang magpasya ang hanay ng mga suportadong mga opsyon nang magilas, na ginagawang madaliang mabasa ang code na error at mahirap basahin. Ito ay naitama sa pamamagitan ng pagsasaayos ng API upang ilaan at ibalik ang isang bagong kopya ng array na "pagpipilian sa struct".
  • Ang paggamit ng strbuf sa "git rm" upang bumuo ng filename upang alisin ay isang bit suboptimal, na naayos na.
  • "git commit --help" sinabi "- hindi napatunayan" ay lamang tungkol sa paglaktaw ng pre-commit hook, at nabigo na sabihin na ito rin nilaktawan ang commit-msg hook.

  • "git merge" sa Git v2.9 ay itinuro upang pagbawalan ang pagsasama ng walang kaugnayang mga linya ng kasaysayan sa pamamagitan ng default, ngunit ito ay eksakto ang uri ng bagay na "--rejoin" mode ng "git subtree" (sa contrib /) gustong gawin. "git subtree" ay tinuturuan na gamitin ang opsyon na "--allow-unrelated-histories" upang i-override ang default.
  • Ang pamamaraan ng pagtatayo para sa "git persistent-https" helper (sa contrib /) ay na-update upang maitayo ito sa mas bagong mga bersyon ng Go.
  • May isang pag-optimize na ginamit sa "git diff $ treeA $ treeB" upang humiram ng naka-check na na kopya sa nagtatrabaho na puno kapag ito ay kilala na katulad ng patak na inihambing, umaasa na bukas / mmap ng naturang ang isang file ay mas mabilis kaysa sa pagbabasa nito mula sa tindahan ng bagay, na kinabibilangan ng pagpapalaki at pag-aaplay ng delta. Gayunpaman, ito ay kicked sa kahit na ang check-out na kopya ay kailangang pumunta sa pamamagitan ng convert-to-git conversion (kasama ang malinis na filter), na kung saan defeats ang buong punto ng pag-optimize. Ang pag-optimize ay hindi pinagana kapag kinakailangan ang conversion.
  • "git -c grep.patternType = extended log --basic-regexp" na hindi sinasadya dahil ang panloob na API na ma-access ang grep makinarya ay hindi mahusay na dinisenyo.
  • Ang Windows port ay nabigo sa ilang mga pagsusulit sa t4130, dahil sa kakulangan ng inum sa ibinalik na mga halaga sa pamamagitan ng lstat (2) na pagtulad nito.
  • Ang mga character na nasa label na ipinapakita para sa mga tag / ref para sa mga gumagawa sa "gitweb" na output ay maayos nang na-escaped para sa tamang output ng HTML.
  • Maaaring kasinungalingan ang FreeBSD kapag tinanong ng mtime ng isang direktoryo, na ginawa ang untracked code ng cache na bumabalik sa isang mabagal na landas, na kung saan ay naging sanhi ng mga pagsubok sa t7063 upang mabigo dahil gusto nito na i-verify ang pag-uugali ng mabilis na landas.
  • Squelch compiler warnings para sa netmalloc (sa compat /) library.
  • Ang dokumentasyon ng API para sa hashmap ay hindi malinaw kung ang hashmap_entry ay maaaring ligtas na itapon nang walang anumang iba pang pagsasaalang-alang. Sabihin na ligtas na gawin ito.
  • Ang not-so-recent na pagsulat na muli ng "git am" na nagsimula sa paggawa ng mga panloob na tawag sa makina ng makinarya ay may hindi sinasadyang pagbabalik, sa gaano man ilang segundo ang kinuha nito upang magamit ang maraming mga patch, ang resultang tagapamahala ng timestamp para sa mga nagawa lahat ay pareho.
  • "git difftool ..." na nagsimula sa isang subdirectory ay nabigong i-interpret ang mga path na may kaugnayan sa direktoryong iyon, na naayos na.

Ano ang bago sa bersyon 2.9.1:

  • Kapag "git daemon" ay tumakbo nang hindi - [init-] tinukoy ng timeout, ang isang koneksyon mula sa isang kliyente na tahimik na napupunta sa offline ay maaaring mag-hang sa loob ng mahabang panahon, pag-aaksaya ng mga mapagkukunan. Pinagana ang socket-level na KEEPALIVE upang pahintulutan ang OS na mapansin ang mga nabagong koneksyon.
  • Ang mga command sa pamilya ng `git log` ay tumatagal ng% C (auto) sa isang custom na format na string. Ito unconditionally naka-on ang kulay sa, hindi papansin --no-kulay o may --color = auto kapag ang output ay hindi konektado sa isang tty; ito ay naitama upang ang format ay tunay na kumilos bilang "auto".
  • "git rev-list --count" kung saan ang limitasyon ng paglalakad ay limitado sa "-n" na opsyon ay hindi gumagana nang maayos sa pag-count na-optimize upang tingnan ang bitmap index.

  • "git show -W" (pahabain ang mga hunks upang masaklaw ang buong pag-andar, na pinapahintulutan ng mga linya na tumutugma sa "funcname" na pattern) na ginamit upang ipakita ang buong file kapag ang isang pagbabago ay nagdagdag ng buong function sa dulo ng file, na ay naayos na.
  • Na-update ang hanay ng dokumentasyon upang ang literal na mga utos, mga variable ng pagsasaayos at mga variable ng kapaligiran ay patuloy na nagtatakda sa fixed-width font at naka-bold sa mga manpages.
  • "git svn propset" subcommand na idinagdag sa 2.3 araw ay dokumentado ngayon.
  • Ang dokumentasyon ay sumusubok na patuloy na ispelyo ang "GPG"; kapag tumutukoy sa partikular na pangalan ng programa, "gpg" ay ginagamit.

  • Ang "git reflog" ay tumigil sa pagkakita ng isang entry na nagpapahiwatig ng isang kaganapan sa paglikha ng sangay (aka "hindi pa natutugunan"), na lumitaw na parang pinalabas ang reflog.
  • Ang git-prompt scriptlet (sa contrib /) ay hindi magiliw sa mga gumagamit ng "set -u", na naayos na.
  • Ang isang codepath na ginamit na alloca (3) upang ilagay ang isang walang katapusang halaga ng data sa stack ay na-update upang maiwasan ang paggawa nito.

  • Ang "git update-index --add --chmod = + x file" ay maaaring magamit bilang isang hatch escape, ngunit hindi isang magiliw na bagay upang pilitin para sa mga taong nangangailangan na gamitin ito nang regular. "git add --chmod = + x file" ay maaaring gamitin sa halip.
  • Bumuo ng mga pagpapabuti para sa gnome-keyring (sa contrib /)
  • "git status" na ginamit upang sabihin ang "working directory" kapag nilalayong "working tree".
  • Ang mga komento tungkol sa pag-alis ng mga shell ng FreeBSD ay nilinaw sa numero ng bersyon (9.x at bago ay nasira, ang mga mas bagong mga ay OK).
  • "git cherry-pick A" ay nagtrabaho sa isang hindi pa isinisilang na sangay, ngunit ang "git cherry-pick A..B" ay hindi.
  • "git add -i / -p" natutunan na igalang ang diff.compactionHeuristic na pang-eksperimentong hawakan ng pinto, upang ang user ay makapagtrabaho sa parehong hunk split bilang "git diff" na output.
  • "log --graph --format =" natutunan na "% & gt; | (N)" ang tumutukoy sa lapad na may kaugnayan sa kaliwang gilid ng terminal, hindi kaugnay sa lugar upang gumuhit ng teksto na nasa kanan ng ninuno -Mga seksyon ng grasa. Tinatanggap din nito ngayon ang negatibong N na nangangahulugang ang limitasyon sa haligi ay kamag-anak sa kanang hangganan.
  • Ang tuntunin ng pagmamay-ari para sa piraso ng memorya na nagtataglay ng mga sanggunian na kinukuha sa "git fetch" ay tuso, na nalinis.
  • "git bisect" ay gumagawa ng isang panloob na tawag sa "git diff-tree" kapag nakikita ng bisection ang salarin, ngunit ang tawag na ito ay hindi nagpapasimula ng istraktura ng data upang maipasa sa diff-tree API nang wasto.
  • Mga format ng iba't ibang data (at kung paano patunayan ang mga ito) kung saan gagamitin namin ang dokumentong GPG na dokumentado.
  • Ayusin ang isang hindi sinasadyang pagbabalik sa v2.9 na nagbubuwag sa "clone - dulo" na nagre-recurses pababa sa submodules sa pamamagitan ng pagpwersa sa mga submodules upang ma-clone rin nang malalim, na maraming mga pangyayari sa server na nag-host sa salungat sa agos ng submodules ay hindi handa para sa.
  • Ayusin ang hindi kinakailangang pag-aaksaya sa idiomatic na paggamit ng ': $ {VAR = default}' upang itakda ang default na halaga, nang hindi nakapaloob sa double quotes.
  • Ang ilang mga code na may tiyak na platform ay may mga di-ANSI na mahigpit na deklarasyon ng mga function ng C na hindi tumatagal ng anumang mga parameter, na naitama.

  • Ang panloob na code na ginamit upang ipakita ang lokal na timezone na offset ay hindi handa upang mahawakan ang mga timestamp na lampas sa taong 2100, at nagbigay ng isang bogus na halaga ng offset sa tumatawag. Gumamit ng isang mas mahihirap na naghahanap ng +0000 sa halip at hayaan ang "git log" sa isang kaso, sa halip na aborting.
  • Isa sa apat na invocations ng readlink (1) sa aming test suite ay muling isinulat upang ang pagsubok ay maaaring tumakbo sa mga sistema nang walang command (ang iba ay nasa balangkas ng valgrind test at t9802).
  • t / perf pangangailangan / usr / bin / oras sa extension ng GNU; ang paghimok nito ay na-update sa "gtime" sa Darwin.
  • Ang isang bug, na naging sanhi ng "git p4" habang tumatakbo sa ilalim ng mode na lapis upang mag-ulat ng mga landas na tinanggal dahil sa hindi tamang prefix ng sangay, ay naayos na; ang utos ay nagsabi ng "Hindi papansin ang file sa labas ng prefix" para sa mga landas na _inside _.
  • Ang dokumentong nasa itaas na antas na "git help git" ay itinuturo pa rin ang dokumentong naka-host sa wala na-google na code repository. I-update ito upang ituro sa https://git.github.io/htmldocs/git.html sa halip.

Ano ang bago sa bersyon 2.9.0:



Bago sa GIT 2.8.1 (ika-5 ng Abril, 2016)

Ano ang bago sa bersyon 2.8.1:

  • "gumawa ng target na rpmbuild" ay nasira habang ang input nito, git.spec.in, ay hindi na-update upang tumugma sa isang file na inilalarawan nito na pinalitan na ng kamakailan. Naayos na ito.

Ano ang bago sa bersyon 2.7.3:

  • Ayon sa kaugalian, ang mga pagsubok na sinusubukan ang mga utos na nagtatrabaho sa mga nilalaman sa puno ng trabaho ay pinangalanan sa "worktree" sa kanilang mga filename, ngunit sa pinakahuling karagdagan ng "git worktree" na subcommand, na ang mga pagsusulit ay pinangalan din na katulad nito maging mahirap na sabihin sa kanila. Ang tradisyonal na mga pagsubok ay pinalitan ng pangalan upang gamitin ang "work-tree" sa halip na pagtatangka na iibahin ang mga ito.
  • Maraming codepaths ang kalimutan na suriin ang halaga ng pagbalik mula sa git_config_set (); ang pag-andar ay ginawa upang mamatay () upang matiyak na hindi kami magpapatuloy kapag ang pagtatakda ng isang configuration variable ay nabigo.
  • Ang paghawak ng mga pagkakamali habang nagsusulat sa aming panloob na proseso ng asynchronous ay ginawang mas matatag, na nagbabawas ng pagkasira sa aming mga pagsusulit.
  • "git show" HEAD: Foo [BAR] Baz '"ay hindi nagpakahulugan ng argument bilang isang rev, yan ang bagay na pinangalanang ng pathname na may wildcard na mga character sa isang bagay na puno.
  • "git rev-parse --git-common-dir" na ginamit sa tampok na worktree na hindi sinasadya kapag tumakbo mula sa isang subdirectory.
  • Ang "v (iew)" subcommand ng mapag-ugnay na "git am -i" na utos ay nasira sa 2.6.0 na panahon nang ang utos ay muling isinulat sa C.
  • Ang "git merge-tree" na ginamit sa mishandle "idinagdag ang magkabilang panig na" salungat sa sarili nitong "lumikha ng isang pekeng file ng ninuno na may mga karaniwang bahagi ng kung ano ang idinagdag ng magkabilang panig at gumawa ng 3-way na pagsasama" logic; Na-update na ito upang magamit ang karaniwang "3-way na pagsamahin sa isang walang laman na patak bilang pekeng karaniwang ninuno file" na diskarte na ginamit sa ibang bahagi ng system.
  • Ang tuntunin ng pagmamay-ari ng pagmamay-ari ng fill_textconv () API, na kung saan ay medyo nakakalito, ay na-dokumentado nang mas mahusay.
  • Ang dokumentasyon ay hindi malinaw na nagsasaad na ang 'simpleng' mode ay ngayon ang default para sa "git push" kapag ang push.default configuration ay hindi nakatakda.
  • Ang mga kamakailang bersyon ng GNU grep ay pickier kapag ang kanilang pag-input ay naglalaman ng di-makatwirang binary data, na ginagamit ng ilan sa aming mga pagsubok. Isulat muli ang mga pagsubok upang maiwasan ang problema.
  • Ang function ng helper na "git submodule" ay gumagamit mula noong v2.7.0 upang ilista ang mga module na tumutugma sa argumento ng pathspec na ibinigay sa mga subcommand nito (hal. "submodule add") ay naayos na.

  • Ang "git config section.var value" upang magtakda ng isang halaga sa bawat-repository na configuration file ay nabigo kapag ito ay tumakbo sa labas ng anumang repository, ngunit hindi sinasabi ang dahilan nang tama. Ang code na basahin ang data ng pack gamit ang mga offset na naka-imbak sa pack idx file ay ginawang mas maingat na suriin ang validity ng data sa idx.

Ano ang bago sa bersyon 2.7.2:

  • Ang gitnang lebel ng makinarya ng pagsasama ay itinuro upang gamitin ang pagwawakas ng CRLF linya kapag nagpasok ng mga tagamarka ng labanan sa mga pinagsamang mga nilalaman na ang kanilang sarili ay pinawalang linya ng CRLF.

  • Ang "git worktree" ay may sirang code na sinubukang i-auto-fix ang posibleng hindi pagkakapare-pareho na nagreresulta mula sa mga end-user na gumagalaw sa isang worktree sa iba't ibang lugar nang hindi nagsasabi sa Git (ang orihinal na repository ay kailangang mapanatili ang mga backpointers sa mga worktrees nito, ngunit "mv" patakbuhin sa pamamagitan ng end-user na hindi pamilyar sa katotohanang iyon ay malinaw na hindi ayusin ang mga ito), na talagang ginawa ang mga bagay na mas masahol pa kapag nag-trigger.
  • "git push --force-with-lease" ay itinuro upang mag-ulat kung kinakailangan ang push upang pilitin (o mabilis na maipasa).
  • Ang utos na "oo" na ginamit sa aming mga script ng pagsusulit ay tweaked hindi gumastos ng masyadong maraming oras sa pagbuo ng hindi kinakailangang output na hindi ginagamit, upang matulungan ang mga pagsubok sa Windows kung saan hindi ito titigil hanggang mapunan ang pipe buffer dahil sa kakulangan ng SIGPIPE.
  • Ang backend ng vimdiff para sa "git mergetool" ay tweaked upang ayusin at numero buffers sa pagkakasunud-sunod na tumutugma sa inaasahan ng karamihan ng mga tao na basahin kaliwa papunta sa kanan, at pagkatapos ay itaas pababa at magtalaga buffers 1 2 3 4 "itak" sa mga lokal na base na remote merge windows batay sa order na iyon.
  • Ang dokumentasyon para sa "git malinis" ay naitama; binanggit na ang .git / modules / * ay inalis sa pamamagitan ng pagbibigay ng dalawang "-f", na hindi kailanman naging kaso.
  • Ang mga landas na sinabi sa index tungkol sa "add -N" ay hindi pa sa indeks, ngunit ang ilang mga utos ay kumilos na kung sila ay nasa mapanganib na paraan.
  • Kasama rin sa mga maliliit na dokumentasyon at mga update sa pagsubok.

Ano ang bago sa bersyon 2.6.4:

  • Ang "pag-configure" na script ay hindi sumusubok para sa -mag-ulat nang tama, na nakakasagabal sa ilang mga link.
  • Magdagdag ng suporta para sa pakikipag-usap sa http / https sa mga proxy ng medyas.
  • Pag-aayos ng Portability para sa Windows, na maaaring isulat muli ang $ SHELL variable gamit ang mga path na hindi POSIX.
  • Lagi naming pinahihintulutan ngayon ang lahat ng mga kawit na huwag pansinin ang kanilang karaniwang input, sa halip na magkaroon ng git complain ng SIGPIPE.
  • Ayusin ang pag-quote ng shell sa contrib script.
  • Pag-ayos ng pag-port ng daloy para sa isang paksa sa v2.6.1.
  • Payagan ang pagpapalawak ng tilde sa ilang mga variable sa config ng http.
  • Magbigay ng kapaki-pakinabang na espesyal na kaso "diff / show --word-diff-regex =." bilang halimbawa sa dokumentasyon.
  • Ayusin para sa isang sulok na kaso sa filter-branch.
  • Gumawa ng git-p4 na trabaho sa isang hiwalay na ulo.
  • Paglilinaw ng dokumentasyon para sa "i-check-ignore" nang walang "--verbose".
  • Tulad ng pinagtatrabahuhan na puno ay nalinis kapag kinansela ng user ang pagsusumite sa P4Submit.applyCommit (), linisin ang gulo kung ang "p4 submit" ay nabigo.
  • Ang pagkakaroon ng isang natitirang .idx na file nang hindi naaayon .pack file sa repositoryo ay nasasaktan ang pagganap; "git gc" natutunan upang putulin ang mga ito.
  • Ang code upang ihanda ang bahagi ng nagtatrabaho puno ng pansamantalang direktoryo para sa tampok na "dir-diff" Nakalimutan na ang mga simbolikong mga link ay hindi kailangang kopyahin (o symlinked) sa pansamantalang lugar, dahil ang code ay mga espesyal na kaso at patungan sila. Bukod, ito ay mali upang subukan computing ang pangalan ng target ng target ng symbolic link, na maaaring hindi kahit na umiiral o maaaring isang direktoryo.
  • Walang paraan upang talunin ang isang naka-configure na rebase.autostash variable mula sa command line, bilang "git rebase --no-autostash" ay nawawala.
  • Pahintulutan ang "git interpret-trailers" na tumakbo sa labas ng Git repository.
  • Gumawa ng wastong "marumi" na marker para sa mga senyas ng shell, kahit na sa isang ulila o isang hindi pa isinisilang na sangay.
  • May mga kaso sa sulok na naayos sa string-matching na ginawa sa "git status".
  • Ang karaniwang pagpapatupad ng crypto ng Apple ng SHA1_Update () ay hindi tumatagal ng higit sa 4GB sa isang pagkakataon, at mayroon na kami ngayong isang workaround na pag-compile-time para dito.

Ano ang bago sa bersyon 2.5.3:

  • Ang pang-eksperimentong hindi-naka-cache na tampok ay maraming surot kapag ang mga landas na may ilang mga antas ng mga subdirectory ay kasangkot.
  • Ang mga kamakailang bersyon ng script na "git am" ay may isang pagbabalik ng pagganap sa "git am - skip" na codepath, na wala nang nasa built-in na bersyon sa harap ng 'master'. Ayusin ang pagbabalik sa huling script na bersyon na lumilitaw sa 2.5.x maintenance track at mas matanda.

Ano ang bago sa bersyon 2.4.6:

  • "git fetch --depth =" at "git clone --depth =" nagbigay ng isang mababaw na kahilingan sa paglipat kahit sa isang upload-pack na hindi sumusuporta sa kakayahan.
  • "git fsck" ay ginagamit upang huwag pansinin ang nawawalang o di-wastong mga bagay na naitala sa reflog.
  • Ang pagkumpleto ng tcsh ay nagsusulat ng script ng bash ngunit maaaring nabigo para sa mga user na may set na noclobber.
  • Ang kamakailang mga pag-update ng Mac OS X ay pumutol sa lohika upang makita na ang makina ay nasa kapangyarihan ng AC sa sample pre-auto-gc script.
  • "git format-patch - signore-if-upstream A..B" ay hindi nais na maging pinakain ng mga tag bilang mga hangganan na gumagawa.
  • Naglalaman din ng typofixes, mga update sa dokumentasyon at walang kuwenta code
  • malinis na-up.

Ano ang bago sa bersyon 2.4.2:

  • "git rev-list - mag-uusisa ng $ lumang - hindi - lahat" upang makita kung ang lahat ng naaabot mula sa $ lumang ay konektado sa umiiral na mga ref ay napakaliit.
  • "hash-object - literally" na ipinakilala sa v2.2 ay hindi handa na kumuha ng isang talagang mahabang pangalan ng uri ng bagay.
  • "git rebase --quiet" ay hindi masyadong tahimik kapag walang gawin.
  • Ang pagkumpleto para sa "log --decorate =" parameter value ay hindi tama.
  • "filter-branch" masama na mensahe sa log ng gumawa na nagtatapos sa isang hindi kumpleto na linya sa mga platform na may ilang mga "sed" na pagpapatupad na nagmumula sa gayong linya. Gawin ito sa pamamagitan ng pag-iwas sa paggamit ng "sed".

  • Ang "git daemon" ay hindi nagtatayo mula sa source sa ilalim ng configuration ng NO_IPV6 (pagbabalik sa 2.4).
  • "git stash pop / apply" nakalimutan upang tiyakin na hindi lamang ang gumaganang puno ay malinis ngunit din ang index ay malinis. Ang huli ay mahalaga habang ang isang stash application ay maaaring sumasalungat at ang index ay gagamitin para sa resolusyon ng conflict.
  • Nakareserba na namin ang $ GIT_EXEC_PATH at ang landas na "git" ay naka-install sa (karaniwan ay "/ usr / bin") sa $ PATH kapag gumagamit ng mga subprogram at mga kawit para sa halos kawalang-hanggan, ngunit ang orihinal na kaso ng paggamit na sinusubukang suportahan ang huli ay semi -bogus (ibig sabihin, i-install ang git sa / opt / foo / git at patakbuhin ito nang hindi nagkakaroon / opt / foo sa $ PATH), at higit na mahalaga ito ay naging mas kaunti at hindi gaanong may kaugnayan bilang Git na lumago nang higit pa mainstream (ibig sabihin ang mga gumagamit ay may _want_ ito sa kanilang $ PATH). Itigil ang paghahanda ng landas na kung saan ang "git" ay naka-install sa mga gumagamit '$ PATH, dahil ito ay makagambala sa utos ng paghahanap ng mga tao na nakasalalay sa (hal. Maaaring hindi nila gusto ang mga bersyon ng mga programa na walang kaugnayan sa Git sa / usr / bin at nais i-override ang mga ito sa pamamagitan ng pagkakaroon ng iba't ibang mga sa / usr / local / bin at ang huling direktoryo ng mas maaga sa kanilang $ PATH).
  • Naglalaman din ng mga typofix, mga update sa dokumentasyon at mga maliliit na code na paglilinis.

Katulad na software

bloom
bloom

20 Feb 15

TeamControl
TeamControl

12 May 15

musdex
musdex

11 May 15

Svnmailer
Svnmailer

11 May 15

Mga komento sa GIT

Mga Komento hindi natagpuan
Magdagdag ng komento
I-sa mga imahe!