BzrSync เป็นโปรแกรมที่จะช่วยให้นักพัฒนาใช้บาซาร์ในหลายเครื่อง โดยจะช่วยให้เลือกที่เก็บและสาขาตรงข้ามเครื่อง Bazaar ตัวเองถูกนำมาใช้สำหรับการประสาน (กับ "bzr ดึง") เพื่อให้มั่นใจความสม่ำเสมอตลอดเวลา
การติดตั้ง
การติดตั้งรุ่นเสถียรล่าสุดของ BzrSync ใช้ pip:
PIP ติดตั้ง bzrsync
หรือใช้ setuptools:
easy_install bzrsync
มิฉะนั้นถ้าไม่ pip หรือ setuptools ที่มีอยู่ก็เป็นไปได้ที่จะดาวน์โหลดแพคเกจแหล่งที่มาของสารสกัดและเรียกใช้คำสั่ง setup.py ปกติ (เช่นจาก PyPI.)
หลาม setup.py ติดตั้ง
การใช้งาน
ลองสมมติว่าคุณทำงานจากที่สามเวิร์คสเตชั่แตกต่างกันและชื่อโฮสต์ของพวกเขามีอัลฟาและเบต้าแกมมา คุณต้องการที่จะให้เก็บ Bazaar และสาขาตรงกันระหว่างทั้งสามโหนดใช้ BzrSync BzrSync จะหมายถึงการที่จะใช้กับที่เก็บที่ใช้ร่วมกันดังนั้นถ้าคุณไม่ได้ใช้เหล่านี้คุณควรจัดระเบียบใหม่สาขาของคุณเพื่อใช้เก็บที่ใช้ร่วมกัน มันง่ายที่จะให้เก็บทั้งหมดภายในไดเรกทอรีเดียวกัน ในตัวอย่างของเราที่เก็บของเราจะอยู่ใน ~ / bzr และชื่อของพวกเขาจะสิ้นสุดใน ".bzr" ในแต่ละพื้นที่เก็บข้อมูลที่ใช้ร่วมกันที่ระดับบนสุดควรจะมีไดเรกทอรีสำหรับแต่ละโหนด ในกรณีของเราอัลฟาและเบต้าแกมมา ตัวอย่างเช่นสมมติจินตนาการที่เราได้พื้นที่เก็บข้อมูลชื่อ "โครงการ foo.bzr" เรากำลังทำงานในอัลฟาและได้สร้างลำตัวและคุณลักษณะที่ 1 สาขา เราจะมี:
~ / bzr / โครงการ foo.bzr /
~ / bzr / โครงการ foo.bzr / อัลฟา
~ / bzr / โครงการ foo.bzr / อัลฟา / ลำ
~ / bzr / โครงการ foo.bzr / อัลฟา / คุณลักษณะที่ 1
~ / bzr / โครงการ foo.bzr / เบต้า
~ / bzr / โครงการ foo.bzr / แกมมา
ลองคิดว่าเรายังมีพื้นที่เก็บข้อมูล local.bzr เราไม่ต้องการที่จะประสานในทิศทางใดทิศทางหนึ่ง
BzrSync ต้องการไฟล์ config YAML โดยค่าเริ่มต้น ~ / .bazaar / bzrsync.yaml รายชื่อที่เก็บและสาขาที่เรา ในตัวอย่างนี้เนื้อหาจะได้รับ:
# โหนดระยะไกล
# (โฮสต์สามารถระบุกับพอร์ตตัวเลือกเป็นเจ้าภาพ: PORT)
จอมโยธา
- อัลฟา
- เบต้า
- แกมมา
# ที่เก็บที่ระบุไว้กับทางญาติ / รูปแบบการอยู่
ราก: ~ / bzr
# * * * * * * * * ทั้งหมดที่เก็บ
ที่เก็บ "* .bzr"
# ที่เก็บเฉพาะแยกออกจาก 'เก็บ'
ไม่รวม:
- local.bzr
ที่เก็บ # เพื่อส่งออกไปยังโหนดระยะไกล
การส่งออก: "* .bzr"
ที่เก็บเฉพาะ # การยกเว้นจากการส่งออก
export_exclude:
- local.bzr
ที่เก็บ # เพื่อซิงค์จากรีโมท
ซิงค์ "* .bzr"
ที่เก็บเฉพาะ # การยกเว้นจากการซิงค์
sync_exclude:
- local.bzr
เราสามารถใช้ตรงนี้แฟ้มการกำหนดค่าเดียวกันทั้งสามโหนด
BzrSync จะไม่สร้างที่เก็บที่ใช้ร่วมกันสำหรับคุณดังนั้นก่อนดำเนินการทำเช่นนั้นในขณะนี้บนโหนดทั้งหมดในการสร้างความทรงจำยังโหนดย่อย
แล้วเปิดภูต BzrSync บนโหนดทั้งหมด:
อัลฟา $ bzrsync ให้บริการ
เบต้า $ bzrsync ให้บริการ
แกมมา $ bzrsync ให้บริการ
ตอนนี้ขอซิงค์โครงการ foo.bzr จากอัลฟาเบต้า:
& nbsp; เบต้า $ bzrsync ซิงค์ ~ / bzr / โครงการ foo.bzr
นี้จะดึงไปเบต้าทุกสาขาจาก ~ / bzr / โครงการ foo.bzr / อัลฟา / ในอัลฟาและสาขาทั้งหมดจาก ~ / bzr / โครงการ foo.bzr / แกมมา / ในแกมมา ในกรณีของเราเท่านั้นที่อัลฟามีสาขาในขณะนี้ดังนั้นในทางปฏิบัติเราจะได้รับสาขาอัลฟา / ลำตัวและอัลฟา / คุณลักษณะที่ 1 จากอัลฟาเบต้าทำให้พวกเขาเป็นอัลฟา / ลำตัวและอัลฟา / คุณลักษณะที่ 1
ถ้าคุณต้องการที่จะทำงานในรุ่นเบต้าในขณะนี้สาขาจากสาขาใหม่ที่ตรงกับคู่ของพวกเขาภายในเบต้า / ไดเรกทอรีย่อย:
เบต้า $ bzr สาขา ~ / bzr / โครงการ foo.bzr / อัลฟา / คุณลักษณะที่ 1 ~ / bzr / โครงการ foo.bzr / เบต้า / คุณลักษณะที่ 1
เบต้า $ bzr ร่วม ~ / bzr / โครงการ foo.bzr / เบต้า / คุณลักษณะที่ 1 foo คุณลักษณะ-1
เบต้า cd $ foo คุณลักษณะ-1
...
สับสับสับ
...
เบต้า $ กระทำ
ตอนนี้ในรุ่นเบต้าเราจะมี:
~ / bzr / โครงการ foo.bzr /
~ / bzr / โครงการ foo.bzr / อัลฟา
~ / bzr / โครงการ foo.bzr / อัลฟา / ลำ
~ / bzr / โครงการ foo.bzr / อัลฟา / คุณลักษณะที่ 1
~ / bzr / โครงการ foo.bzr / เบต้า
~ / bzr / โครงการ foo.bzr / เบต้า / คุณลักษณะที่ 1
~ / bzr / โครงการ foo.bzr / แกมมา
เมื่อคุณได้เสร็จสิ้นการทำงานในเบต้าคุณสามารถซิงค์จากอัลฟา:
& nbsp; $ อัลฟา bzrsync ซิงค์ ~ / bzr / โครงการ foo.bzr
และสิ่งนี้จะสร้างเบต้า / คุณลักษณะที่ 1 อัลฟาเกินไปซึ่งคุณสามารถดึงลงอัลฟา / คุณลักษณะที่ 1 หากไม่ได้แยกหรือรวมเป็นอย่างอื่นและเริ่มต้นการทำงานจากที่อัลฟาอีกครั้ง
โปรดดูตัวอย่าง bzrsync.yaml แฟ้มสำหรับตัวอย่างที่สมบูรณ์มากขึ้นซึ่งยังรวมถึงชุดสาขา
คุณสมบัติ .
- ใด ๆ จำนวนเครื่องได้รับการสนับสนุน
- มีการประกันความมั่นคงตลอดเวลา
ต้องการ
- งูใหญ่
ความคิดเห็นที่ไม่พบ