BzrSync egy segédprogram segítségével a fejlesztő használja Bazaar több gépen. Ez automatikusan tartja a kijelölt tárolókban és ágak szinkronban zajlott a gépek. Bazaar önmagában használják a szinkronizálás (a "bzr pull"), biztosítva konzisztencia minden alkalommal.
Telepítés
Hogy telepítse a legújabb stabil verziója BzrSync, a pip:
pip telepíteni bzrsync
vagy használ setuptools:
easy_install bzrsync
Ellenkező esetben, ha sem pip sem setuptools állnak rendelkezésre, akkor lehet letölteni (pl. Re PyPI) a forrás csomagot, tömörítsük ki és fuss a szokásos setup.py parancsokat:
python setup.py telepíteni
Használat
Tegyük fel, hogy a munka három különböző munkaállomások, és azok hostnevek alfa, béta és gamma. Meg akarja tartani a Bazaar tárolókat és ágak szinkronizált között három csomópont segítségével BzrSync. BzrSync célja, hogy kell használni a közös tárolókban, így ha nem használja ezeket, akkor újra kell szervezni az ágak az osztott tároló. Könnyebb megtartani az összes olyan forrást belül az azonos könyvtárban. A példánkban a forrásfából laknak ~ / bzr és neveiket vége a ".bzr". Az egyes közös tároló, a legfelső szinten kell egy könyvtár minden egyes csomóponthoz. A mi esetünkben alfa, béta és gamma. Például képzeljük el, hogy van egy adattár nevű "projekt-foo.bzr". Dolgozunk alfa, és létrehoztunk egy törzs és a feature-1 ág. Mi lesz:
~ / Bzr / projekt-foo.bzr /
~ / Bzr / projekt-foo.bzr / alpha
~ / Bzr / projekt-foo.bzr / alfa / trunk
~ / Bzr / projekt-foo.bzr / alfa / feature-1
~ / Bzr / projekt-foo.bzr / beta
~ / Bzr / projekt-foo.bzr / gamma
Tegyük fel, hogy mi is van egy local.bzr adattár nem akarunk szinkronizálni, mindkét irányban.
BzrSync szüksége YAML config file, alapértelmezésben ~ / .bazaar / bzrsync.yaml, felsorolva az adattárak és az ágak is. Ebben a példában annak tartalma a következő lesz:
# A távoli csomópontok
# (A host lehet egy tetszőleges port mint házigazda: PORT)
hosts:
- Alpha
- Béta
- Gamma
# Ahol adattárak megadott relatív útvonallal / minta található
root: ~ / bzr
# * Minden * adattárak
adattárak: "* .bzr"
# Konkrét adattárak, hogy kizárja a "letéteményesei"
kizárják:
- Local.bzr
# Adattárak exportálni a távoli csomópontok
export: "* .bzr"
# Speciális tárolókban kizárt export
export_exclude:
- Local.bzr
# Adattárak szinkronizálni a távirányítót
sync: "* .bzr"
# Speciális tárolókban kizárt sync
sync_exclude:
- Local.bzr
Tudjuk használni pontosan ugyanezt konfigurációs fájlt mind a három csomópont.
BzrSync nem hoz létre a közös letéteményesei az Ön számára, így a folytatás előtt, most megteheti az összes csomópont, emlékezve, hogy hozzon létre is a csomópont alkönyvtárakat.
Ezután indítsa el a BzrSync démonokat az összes csomópont:
alpha $ bzrsync szolgálja
beta $ bzrsync szolgálja
gamma $ bzrsync szolgálja
Most sync projekt-foo.bzr alfa és béta:
& Nbsp; beta $ bzrsync sync ~ / bzr / projekt-foo.bzr
Ez húzza a béta összes ágát a ~ / bzr / projekt-foo.bzr / alfa / alfa, és az ágak a ~ / bzr / projekt-foo.bzr / gamma / a gamma. Esetünkben csak alfa vannak leányvállalatai most, hogy a gyakorlatban mi lesz az ágak alfa / trunk és alfa / feature-1 alfa és béta, miközben őket alfa / trunk és alfa / feature-1.
Ha szeretne dolgozni a béta, most ágazik az újonnan szinkronizált ágak társaik belül a béta / könyvtárban:
beta $ bzr ága ~ / bzr / projekt-foo.bzr / alfa / feature-1 ~ / bzr / projekt-foo.bzr / beta / feature-1
beta $ bzr co ~ / bzr / projekt-foo.bzr / beta / feature-1 ize-feature-1
beta $ cd ize-feature-1
...
hack hack hack
...
beta $ elkövetni
Most a béta mi lesz:
~ / Bzr / projekt-foo.bzr /
~ / Bzr / projekt-foo.bzr / alpha
~ / Bzr / projekt-foo.bzr / alfa / trunk
~ / Bzr / projekt-foo.bzr / alfa / feature-1
~ / Bzr / projekt-foo.bzr / beta
~ / Bzr / projekt-foo.bzr / beta / feature-1
~ / Bzr / projekt-foo.bzr / gamma
Ha befejezte dolgozik béta, akkor szinkronizálni alpha:
& Nbsp; alpha $ bzrsync sync ~ / bzr / projekt-foo.bzr
és ez megteremti a béta / feature-1 alfa is, amely akkor húzza rá alfa / feature-1, ha nem elvált egymástól, vagy beolvad más módon, és elkezd dolgozni, alfa újra.
Kérjük, olvassa el például bzrsync.yaml fájl egy teljes példa, ami ugyancsak tartalmazza a fióktelep készletek.
Tulajdonságok :
- bármely gépek száma támogatottak
- állag mindenkor biztosítani
követelmények :
- Python
Hozzászólás nem található