BzrSync

Software skärmdump:
BzrSync
Mjukvaruinformation:
Version: 0.2
Ladda upp dagen: 11 May 15
Utvecklare: Marco Pantaleoni
Licens: Gratis
Popularitet: 68

Rating: 2.0/5 (Total Votes: 1)

BzrSync är ett verktyg för att hjälpa en utvecklare använder Bazaar på flera maskiner. Det håller automatiskt utvalda förråd och grenar synkroniserade över maskinerna. Bazaar själv används för synkronisering (med "bzr pull"), säkerställa överensstämmelse vid alla tidpunkter.
Installation
Så här installerar du den senaste stabila versionen av BzrSync, användning av PIP:
PiP installera bzrsync
eller med hjälp av setuptools:
easy_install bzrsync
Annars, om varken pip eller setuptools finns, är det möjligt att ladda ner källpaketet, extrahera den och köra vanliga setup.py kommandon (t.ex. från PyPI.):
python setup.py installera
Användning
Låt oss anta att du arbetar från tre olika arbetsplatser, och deras värdnamn är alfa, beta och gamma. Du vill behålla dina Bazaar arkiv och grenar synkroniserade mellan alla tre noder använder BzrSync. BzrSync är tänkt att användas med delade databaser, så om du inte använder dem, bör du omorganisera dina grenar att använda gemensamma databaser. Det är lättare att hålla alla förråd inne i samma katalog. I vårt exempel våra arkiv kommer att bo i ~ / bzr och deras namn kommer att sluta i ".bzr". I varje delad förvaret på den översta nivån bör det finnas en katalog för varje nod. I vårt fall alfa, beta och gamma. Till exempel, låt oss föreställa oss att vi har ett slutförvar som heter "projekt foo.bzr". Vi arbetar på alfa, och har skapat en stam och en funktionsrik 1 gren. Vi kommer att ha:
~ / Bzr / projekt foo.bzr /
~ / Bzr / projekt foo.bzr / alfa
~ / Bzr / projekt foo.bzr / alfa / trunk
~ / Bzr / projekt foo.bzr / alfa / funktions 1
~ / Bzr / projekt foo.bzr / beta
~ / Bzr / projekt foo.bzr / gamma
Låt oss anta att vi har också en local.bzr slutförvar vi inte vill synkronisera, i endera riktningen.
BzrSync behöver en YAML konfigurationsfil som standard ~ / .bazaar / bzrsync.yaml, en förteckning över arkiv och grenarna vi. I detta exempel dess innehåll kommer att vara:
# fjärrnoder
# (En värd kan utrustas med en extra port som värd: PORT)
värdar:
- Alfa
- Beta
- Gamma
# Där förvar anges med en relativ sökväg / mönster finns
root: ~ / bzr
# * Alla * förråd
förråden: "* .bzr"
# specifika repositories att utesluta från "arkiv"
utesluta:
- Local.bzr
# arkiv att exportera till avlägsna noder
export: "* .bzr"
# specifika förvar uteslutna från export
export_exclude:
- Local.bzr
# arkiv som ska synkas fjärrkontroller
sync: "* .bzr"
# specifika förvar utestängda från synk
sync_exclude:
- Local.bzr
Vi kan använda exakt samma konfigurationsfil på alla tre noder.
BzrSync kommer inte att skapa gemensamma databaser för dig, så innan du fortsätter, gör det nu på alla noder, kom ihåg att skapa även noden kataloger.
Sedan starta BzrSync demonen på alla noder:
alfa $ bzrsync tjäna
beta $ bzrsync tjäna
gamma $ bzrsync tjäna
Nu synk projekt foo.bzr från alfa till beta:
& Nbsp; beta $ bzrsync synk ~ / bzr / projekt foo.bzr
Detta kommer att dra till beta alla grenar från ~ / bzr / projekt foo.bzr / alfa / på alfa, och alla grenar från ~ / bzr / projekt foo.bzr / gamma / på gamma. I vårt fall, har endast alfa grenar just nu, så i praktiken kommer vi att få grenar alfa / bål och alfa / funktion-1 från alfa till beta, hålla dem som alfa / bål och alfa / funktions 1.
Om du vill arbeta på beta, nu förgrening från de nyligen synkroniserade grenarna till sina motsvarigheter inom beta / katalogen:
beta $ bzr gren ~ / bzr / projekt foo.bzr / alfa / funktion-1 ~ / bzr / projekt foo.bzr / beta / funktions 1
beta $ bzr co ~ / bzr / projekt foo.bzr / beta / funktions 1 foo-feature-1
beta $ cd foo-feature-1
...
hacka hacka hacka
...
beta $ begå
Nu på beta vi får:
~ / Bzr / projekt foo.bzr /
~ / Bzr / projekt foo.bzr / alfa
~ / Bzr / projekt foo.bzr / alfa / trunk
~ / Bzr / projekt foo.bzr / alfa / funktions 1
~ / Bzr / projekt foo.bzr / beta
~ / Bzr / projekt foo.bzr / beta / funktions 1
~ / Bzr / projekt foo.bzr / gamma
När du har arbetat färdigt på beta, kan du synkronisera från alfa:
& Nbsp; alpha $ bzrsync synk ~ / bzr / projekt foo.bzr
och detta kommer att skapa beta / funktion-1 på alfa också, som du kan dra på alfa / funktion-1 om inte avvikit, eller slå samman det annars, och börja arbeta från alfa igen.
Se exemplet bzrsync.yaml filen för en mer komplett exempel, som även omfattar gren uppsättningar

Egenskaper .

  • alla antal maskiner stöds
  • konsekvens garanteras vid alla tidpunkter

Krav :

  • Python

Liknande mjukvara

Atlassian Stash
Atlassian Stash

20 Feb 15

forkfeed
forkfeed

12 May 15

github-collective
github-collective

20 Feb 15

gwsmhg
gwsmhg

20 Feb 15

Kommentarer till BzrSync

Kommentarer hittades inte
Kommentar
Slå på bilder!