git-svn-helpers

Screenshot Software:
git-svn-helpers
Mga detalye ng Software:
Bersyon: 0.9
I-upload ang petsa: 15 Apr 15
Nag-develop: Tom Lazar
Lisensya: Libre
Katanyagan: 24

Rating: nan/5 (Total Votes: 0)

Git-svn-helpers ay isang koleksyon ng mga tool sa command line na lubos na pinapasimple ang paggamit ng Git para svn repositoryo.
pangunahing layunin ng Git-svn-helpers ay upang gumawa ng pag-set up ng isang lokal na imbakan ng Git sumusunod na ng isang umiiral na svn checkout isang 'no-brainer'.
Ito rin humaharap sa paggamit ng isang solong repositoryo ng Git-svn para sa nagtatrabaho sa maraming mga checkouts ng (karaniwang) iba't ibang sangay at lumipat sa pagitan ng mga ito.
Pangunahing paggamit (Halimbawa)
Executive buod:
> Cd path / sa / svn / repo
> Gitify
Narito ang isang halimbawa session:
> Cd / tmp
> Svn co https://svn.plone.org/svn/plone/plone.app.form/branches/1.1 plone.app.form
Isang 1.1 / setup.py
...
Nag-check out 27,228 rebisyon.
> Cd plone.app.form
> Gitify
Walang natagpuang /Users/tomster/.gitcache/ Git repositoryo.
Pagpapasimuno sa pag-clone sa cache.
Pinag-aaralan ang svn log ...
Pag-clone https://svn.plone.org/svn/plone/plone.app.form/ mula r10593: 27155 sa /Users/tomster/.gitcache/
Nasimulan laman ng Git repositoryo sa /Users/tomster/.gitcache/plone.app.form/.git/
...
Git sangay 'lokal / 1.1' ay sumusunod ngayon svn sangay '1.1':
# Sa sangay ng lokal / 1.1
walang gumawa ng (pagtatrabaho na direktoryo ng malinis)
> Git sangay
* Lokal / 1.1
& Nbsp; master
Mga puntos na dapat tandaan:
& Nbsp; * limitado gitify ang pag-clone ng mga pagbabago na makikita sa svn log ng package ugat (dito https://svn.plone.org/svn/plone/plone.app.form/). Isang malaking oras saver, lalo na sa malaking mga repositoryo (tulad ng plone.collective)
& Nbsp; * gitify nilikha ang Git repositoryo sa ~ / .gitcache wala sa lugar
& Nbsp; * gitify lumikha ng mga lokal na sangay ng lokal / 1.1 na susunod sa (remote) svn sangay 1.1 at lumipat dito
Maramihang check-out
Sa kasanayan ay madalas kang makipagtulungan sa iba't ibang mga lokal na kopya ng isang naibigay na imbakan, ibig sabihin, sa puno ng kahoy at sa isang branch tampok na ito. Iyon ay kapag ang direktoryo .gitcache nilikha sa itaas ay sa madaling-gamiting. Ilipat ang aming mga nakaraang mga pag-checkout sa labas ng paraan at lumikha ng pagpapanatili ng pag-checkout na susunod puno ng kahoy Hayaan ang:
> Cd ..
> Mkdir tampok na-sangay
> .mv Plone.app.form tampok na-sangay /
> Mkdir pagpapanatili
> Cd maintenance /
> Svn co https://svn.plone.org/svn/plone/plone.app.form/trunk plone.app.form
Ang isang plone.app.form / setup.py
...
& Nbsp; U plone.app.form
Nag-check out 27,228 rebisyon.
Ano ang mangyayari kung patatakbuhin namin gitify dito ?:
> Cd plone.app.form /
> Gitify
Git sangay 'lokal / puno ng kahoy' Sinusundan ngayon svn sangay 'puno ng kahoy':
# Sa sangay ng lokal / puno ng kahoy
walang gumawa ng (pagtatrabaho na direktoryo ng malinis)
Pansinin, na mas mabilis nagpunta ang operasyon na ito, pati na ngayon na kami na ginagamit ang mga umiiral na imbakan ng Git sa direktoryo ng cache. Ito ay maaaring karagdagang ebedensya sa pamamagitan ng pagtingin sa mga magagamit na mga lokal na sangay ngayon:
> Git sangay
& Nbsp; lokal / 1.1
* Lokal / puno ng kahoy
& Nbsp; master
Caveats
'Recycle' .git sa paraan na ito ay gumagana (marahil nakakagulat) na rin sa kasanayan, ngunit kailangan mong panatilihin sa isip ang sumusunod:
Lahat ng checkouts ibahagi ang parehong index!
Tingnan natin ang isang pagtingin sa kung ano ang ibig sabihin nito sa pamamagitan ng paglipat pabalik sa aming mga tampok na sangay:
> Cd ../../feature-branch/plone.app.form/
> Katayuan ng Git
# Sa sangay ng lokal / puno ng kahoy
# Binago ngunit hindi na-update:
# (Gamitin ang "Git magdagdag / Rm ..." upang i-update kung ano ang ginawa)
# (Gamitin ang "Git checkout - ..." upang itapon ang mga pagbabago sa pagtatrabaho na direktoryo)
#
# Nabago: doc / HISTORY.txt
...
# Tinanggal: plone / app / form / KSS / pagsubok na A / test_kss.py
...
#
# Untracked mga file:
# (Gamitin ang "Git magdagdag ..." isama sa kung ano ang ginawa)
#
# Plone / app / form / pagsubok na A / test_kss.py
Wohah! Ano ang nangyari ay na tumuturo .git ngayon sa puno ng kahoy at sa gayon ay ang command katayuan ay nagpapakita ng mga pagkakaiba sa pagitan ng na at ang aming branch bilang mga lokal na pagbabago, dahil na ay kung ano ang kinakatawan ang filesystem. Maaari naming i-verify ito sa pamamagitan ng paggamit ng command katayuan subversions:
> Svn st

Phew! Lahat upang! Ngunit ano ang gagawin sa Git? Tapos na namin ang pagtatrabaho sa puno ng kahoy at nais upang makabalik sa aming tampok na sangay, ngunit ang index ng Git ay ang lahat ng mali ?! Simple: lamang muling tumakbo gitify:
> Gitify
Git sangay 'lokal / 1.1' ay sumusunod ngayon svn sangay '1.1':
# Sa sangay ng lokal / 1.1
walang gumawa ng (pagtatrabaho na direktoryo ng malinis)
Talaga, na lang ang kailangan mong tandaan kapag nagtatrabaho na may maramihang check-out ng parehong package:! Palaging patakbuhin gitify kapag lumilipat sa pagitan ng check-out

Ano ang bagong sa paglabas :

  • Ang cannonical imbakan ay nasa https://github.com/collective ngayon. [Rossp]
  • Ayusin ang handling kapag lumipat sa isang svn sangay na Git ay mayroon ng isang lokal na sangay para sa. [Rossp]

Ano ang bagong sa bersyon 0.8:

  • Tiyakin ang command init sundin kasama kung ang svn repositoryo ay lumipat sa isa pang sangay. Salamat sa Calvin Hendryx-Parker para sa pag-uulat ng mga isyu. [Tomster]

Ano ang bagong sa bersyon 0.7:

  • Gamitin ang buong kopya sa halip ng symlink upang lumikha nagtatrabaho kopya. Avoids na ito ang isyu ng pagkakaroon ng Git at svn repositoryo Wala sa sync kapag nagtatrabaho na may maramihang mga kopya ng parehong imbakan at lubos na binabawasan ang panganib ng salungatan.
  • Ang ibig sabihin din nito, na ang kunin ang command na ngayon ay nagpapatakbo lamang sa mga cache nang walang pagbabago ng pagtatrabaho kopya (na ginagawang mas ligtas na tumakbo sa pamamagitan ng crontab, halimbawa)
  • Pagpapatakbo gitify laban sa isang lumang-estilong pagtatrabaho kopya gagawa ng error. Pagtanggal lang ang symlink at gitify remedyo muling tumatakbo na, gayunpaman.
  • Ang isa pang epekto, ay ang command init ay kailangan lamang na ngayon nang isang beses para sa bawat nagtatrabaho kopya (hindi na kailangan upang muling patakbuhin ang command pagkatapos ng paglipat sa pagitan ng iba't ibang mga kopya ng pagtatrabaho ng parehong imbakan).
  • gitify samakatuwid hindi na default upang ang command init (tulad ng ginagawa wala Git ni svn kahit ano w / o pagbibigay ng tahasang pagkilos). Gayundin, ito ay napalitan ng pangalan mula gitify (pabalik) sa init. [Tomster]
  • Payagan ang tulong, --version at kukuha ng mga command na tumakbo sa labas .svn direktoryo [tomster]

Ano ang bagong sa bersyon 0.5:

  • Idinagdag gitify-update utos, na gumanap ang isang Git-svn rebase operasyon para sa kasalukuyang svn checkout ngunit pinangangasiwaan din uncommitted mga lokal na pagbabago gracelully (hindi tulad ng Git svn ngunit tulad ng ginagawa svn)
  • Hindi na gamitin ang pag-log module para sa feedback ng user. Ideya na noon ay sa halip naligaw ng landas

Ano ang bagong sa bersyon 0.4:

  • Refactored mga punto ng entry na gamitin lamang gitify. Lahat ng ibang mga utos na ngayon ng mga sub-utos ng gitify:
  • .gs-commit ay pinalitan ng gitify push
  • .gs-fetch ay pinalitan ng gitify fetch
  • Idinagdag paggamit at tulong output para sa bawat command.
  • Inalis ang .gs-clone ng entry point dahil ito ay nakakaapekto lamang sa mga ginamit kasama ng pangunahing gitify utos pa rin.
  • Gamitin ang tamang pag-log sa halip na lamang ang pag-print sa stdout
  • Idinagdag komprehensibong pagsusulit, kabilang ang mga nagagamit na mga pagsubok na sakop ang buong pag-update / gumawa ng ikot ng panahon ng pag-clone ng isang svn repositoryo at commiting pabalik dito.

Ano ang bagong sa bersyon 0.3.1:

  • BUGFIX: Huwag gumamit ng custom na mga alyas, bilang sila ay maaaring hindi naka-install. Lumulutas ito http://github.com/tomster/git-svn-helpers/issues#issue/2
  • BUGFIX: Tahasang ilista elementtree bilang dependency lumulutas ito http://github.com/tomster/git-svn-helpers/issues#issue/1)

Ano ang bagong sa bersyon 0.3 Beta:

  • Idinagdag ang .gs-gumawa ng command na makakatulong paggawa pabalik sa svn at pagpapanatili ng Git at svn sa pag-sync

Ano ang bagong sa bersyon 0.2 Beta:

  • Idinagdag ang .gs-fetch utos na tumutulong sa pagpapanatiling ang cache up-to-date

Mga Kinakailangan :

  • Python

Katulad na software

gwsmhg
gwsmhg

20 Feb 15

SmartGit/Hg
SmartGit/Hg

16 Aug 18

fastimport
fastimport

14 Apr 15

Iba pang mga software developer ng Tom Lazar

ezjail-remote
ezjail-remote

20 Feb 15

Mga komento sa git-svn-helpers

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