หากคุณใช้คอมพิวเตอร์หลายเครื่องคุณจะซิงค์ทุกสิ่งอย่างไร [ปิด]


31

ตอนนี้ฉันมีคอมพิวเตอร์ 4 หรือ 5 เครื่องและฉันต้องการระบบที่ดีกว่าสำหรับการซิงค์ทุกอย่าง ฉันใช้ git และ github เป็นจำนวนมากเพื่อซิงค์ไฟล์ของฉันสำหรับโครงการการเขียนโปรแกรม แต่แล้วก็มีฐานข้อมูล, ไฟล์. bash_profile, สคริปต์ทุบตี ฯลฯ บางครั้งแทนที่จะซิงค์ไฟล์ฉันก็แค่ซิงค์จากคอมพิวเตอร์เครื่องหนึ่งไปยังอีกเครื่องหนึ่ง แต่สิ่งนี้กำลังวุ่นวายอยู่ คอมพิวเตอร์บางเครื่องของฉันเป็น Ubuntu และบางเครื่องเป็น OS X

ข้อเสนอแนะใด ๆ สำหรับการจัดการเวิร์กโฟลว์ที่ครอบคลุมคอมพิวเตอร์ส่วนบุคคลหลายเครื่อง


1
บางทีฉันควรพยายามที่โฟลเดอร์ที่ใช้ร่วมเครือข่าย
แดน

1
@rwong ฉันได้รับความประทับใจที่ @dan กำลังมองหา "คำตอบปกติ" ในตอนแรก ลองโพสต์คำตอบที่อธิบายวิธีการใช้ rsync และโฟลเดอร์ที่แชร์สามารถช่วยเขาได้
อดัมเลียร์

1
อย่างระมัดระวัง.
greyfade

4
สิ่งนี้ไม่เฉพาะเจาะจงสำหรับการเขียนโปรแกรม บางทีการย้ายไปที่ SU อาจเป็นสถานที่ที่ดีกว่าสำหรับสิ่งนี้
วอลเตอร์

1
@FarmBoy - มันจะขึ้นอยู่กับประเภทของฐานข้อมูลเนื่องจากจำนวนมากของพวกเขาเป็นเพียงไฟล์เช่นกัน ... ฉันยังคงเห็นว่านี่เป็นปัญหาการซิงค์ไฟล์มากกว่าการเขียนโปรแกรมหนึ่ง และฉันคิดว่าจะมีคำตอบที่หลากหลายมากขึ้นใน SU แค่ 2 เซ็นต์ของฉัน
วอลเตอร์

คำตอบ:


15

ฉันใช้การผสมผสานของ Git สำหรับที่เก็บคอมไพล์และUnisonสำหรับทุกอย่างอื่น ฉันมีโพรไฟล์พร้อมเพรียงหลายตัวเพื่อให้ฉันสามารถซิงค์สิ่งที่เฉพาะเจาะจง ฉันยังมีสคริปต์ทุบตีที่ต้องผ่านและซิงค์สิ่งต่าง ๆ ที่พร้อมเพรียงกันจากนั้นจะผ่านและอัปเดตที่เก็บ git ทั้งหมดของฉัน

ความพร้อมเพรียงเป็นสิ่งที่ดีที่สุดในใจเมื่อพูดถึงการซิงค์คอมพิวเตอร์


1
คุณจะซิงค์ฐานข้อมูลได้อย่างไร สิ่งนี้ใช้ได้กับทั้ง DDL และ DML หรือไม่
Eric Wilson

ฉันไม่ได้ทำงานกับสิ่งที่เกี่ยวข้องกับ SQL / ฐานข้อมูลในขณะนี้ดังนั้นฉันจึงไม่สามารถตอบคำถามนั้นได้เนื่องจากมันไม่ได้ใช้กับฉัน ฉันพลาดคำถามนั้นไปส่วนหนึ่งและตอบว่าฉันได้รับรหัสและข้อมูลโปรไฟล์ทั้งหมดของฉันตรงกันได้อย่างไร
sp0rus

คุณได้รับข้อขัดแย้งของรุ่นเมื่อใช้ Unison หรือไม่ คุณย่อให้เล็กสุดได้อย่างไร
แดน

ฉันซิงค์ด้วยตนเองเสมอก่อนที่จะแก้ไขอะไรเพื่อฉันจะแก้ไขไฟล์เวอร์ชันล่าสุด ฉันยังมีชุด cron สำหรับทุกคืนเพื่อซิงโครไนซ์คอมพิวเตอร์ ฉันไม่ได้มีปัญหาใด ๆ กับข้อขัดแย้งของรุ่นโดยติดกับระบบนี้ เมื่อฉันต้องเบี่ยงเบนและมีความขัดแย้งเกิดขึ้นมันเป็นสิ่งที่ฉันสามารถเลือกได้ว่าฉันต้องการแทนที่ใคร
sp0rus

15

Dropbox

สำหรับการซิงค์ไฟล์มันเป็นเรื่องง่ายเหมือนกับการทำงานกับไฟล์เหล่านั้นภายในโฟลเดอร์ที่ DropBox รู้ วิดีโอในหน้าหลักทำส่วนใหญ่ของคำอธิบายซึ่งเป็นเหตุผลที่ฉันไม่ได้แสดงความคิดเห็นเกี่ยวกับคุณสมบัติ เพียงแก้ไขไฟล์ที่มีเวอร์ชันแล้ว DropBox จะอัปโหลดโดยอัตโนมัติจากนั้นเครื่องอื่น ๆ ทั้งหมดที่มี DropBox จะดาวน์โหลดเวอร์ชันล่าสุดโดยอัตโนมัติ

สำหรับสิ่งต่างๆเช่นฐานข้อมูล symlink อาจเป็นหนทางไป หัวข้อนี้ในฟอรัม DropBox ให้ข้อมูลเชิงลึกเล็กน้อยว่าจะซิงค์ฐานข้อมูล MySQL อย่างไร หรือคุณสามารถใช้เส้นทางสคริปต์ "ส่งออก / นำเข้า" หรือถ้าคุณใช้ MySQL คุณสามารถดูการจำลองแบบและวิธีการนำไปใช้ (นี่คือคุณสมบัติของ MySQL ที่ไม่ได้ใช้ DropBox)


ฉันไม่เห็นวิธีที่คุณใช้ Dropbox เพื่อซิงค์ฐานข้อมูล
Eric Wilson

คุณสามารถกำหนดเวลาการถ่ายโอนฐานข้อมูลปกติ / คืนค่าไปยัง / จากไดเรกทอรีดรอปบ็อกซ์
badgerr

6
@badgerr พิจารณาขยายคำตอบของคุณเพื่อรวมถึงวิธีใช้ Dropbox ในสถานการณ์ต่างๆที่ OP กล่าวถึง
Adam Lear

นั่นน่าเกลียด ฉันค่อนข้างจะใช้นักเขียนบทเหมือน DbMaintain
Eric Wilson

1
-1 สำหรับเหตุผลที่แอนนากล่าวถึง ขยายคำตอบของคุณและการลงคะแนนจะกลับรายการ ;-)
fretje

7
  • Dropbox
  • Github
  • Firefox Sync สำหรับบุ๊กมาร์ก / ประวัติการตั้งค่า / Firefox

1
+1 สำหรับคำตอบที่ตรงไปตรงมาและสำหรับ dropbox อยู่ด้านบน ไม่ว่าปัญหาการประชาสัมพันธ์ล่าสุดของพวกเขากับชุมชนโอเพ่นซอร์สนั้นเป็นสิ่งที่มีค่าสำหรับฉัน
Falmarri

3

คุณสามารถใช้ GitHub สำหรับรหัสทั้งหมดของคุณแน่นอนรวมถึงไฟล์. bash_profile และสคริปต์ทุบตี

เซิร์ฟเวอร์ Hudson / Jenkins CI นั้นดีสำหรับการดูแลรักษาสภาพแวดล้อมหลาย ๆ ใช้ร่วมกับ DbMaintain มันสามารถทำให้ฐานข้อมูลของคุณซิงค์ได้เช่นกัน

ทีมของฉันใช้ชุดค่าผสมนี้เพื่อซิงค์สถานีจับคู่สี่เครื่องแล็ปท็อปหลากหลายและสภาพแวดล้อม CI, TEST และ QA (กับเซิร์ฟเวอร์และสำเนาฐานข้อมูลของตนเอง)

สิ่งนี้เกี่ยวข้องกับเครื่อง Windows, แล็ปท็อป Mac และเซิร์ฟเวอร์ Linux ดังนั้นจึงค่อนข้างยืดหยุ่น


2

ฉันเก็บ dotfiles ของฉันไว้ในคอมไพล์โดยมีสาขาสำหรับการตั้งค่าเฉพาะเครื่อง มันทำให้ฉันได้รับการติดตั้งเครื่องจักรใหม่อย่างรวดเร็วและฉันสามารถแบ่งปันสคริปต์และทำให้เป็นเวอร์ชันล่าสุดได้


1

บางทีคุณอาจต้องถอยหลังและถามตัวเองว่าทำไมคุณถึงต้องการคอมพิวเตอร์จำนวนมาก มันเหมือนมีคนถามว่าจะรักษาทุกสิ่งของเขาให้เหมือนกันใน 5 คันที่เขาเป็นเจ้าของ

ฉันขอแนะนำให้คุณถามตัวเองว่าแต่ละเครื่องทำอย่างไรที่เครื่องหลักของคุณไม่ได้และแค่ทำอย่างนั้น

คุณถือว่าเป็นแล็ปท็อปที่ดีหรือไม่?

หากสิ่งเหล่านี้อยู่ในบ้านของคุณคุณสามารถตั้งค่าเซิร์ฟเวอร์และเก็บทุกอย่างไว้ที่นั่น จากนั้นคุณมีเพียงเครื่องเดียวที่มีข้อมูลสำรอง

หากเป็นเครื่องระยะไกลให้ลองพิจารณาใช้ linux vps และจัดเก็บข้อมูลระยะไกลของคุณไว้ที่นั่น อย่าใช้บริการออนไลน์ฟรีเช่น github, dropbox และอื่น ๆ เนื่องจากอาจหายไปในเวลาที่ผิด

อย่าใช้ AWS เพื่อจัดเก็บข้อมูลของคุณ ที่ $ 0.1 / เดือน / GB นั่นคือ $ 100 / เดือน / TB หรือ $ 1200 / ปี / TB สำหรับเงินนั้นคุณสามารถซื้อฮาร์ดไดรฟ์ Western Digital ขนาด 1TB ได้ประมาณ 15 ตัว

หากคุณดำเนินธุรกิจและสร้างรายได้ให้ใช้บริการที่ดีที่สุดที่คุณจะได้รับ แต่ตามจริงแล้วมันยากที่จะเอาชนะฮาร์ดไดรฟ์เพื่อย้ายข้อมูลจำนวนมาก แม้กระทั่งไดรฟ์ micro USB ขนาด 32GB ที่มีขนาดของเล็บมือและคุณสามารถย้ายข้อมูลได้มากมาย ...

มีคลาวด์, คลาวด์ส่วนตัว อาจจะมีคลาวด์ส่วนบุคคล ...


ขอบคุณสำหรับเคล็ดลับ ฉันมีคอมพิวเตอร์ 5 เครื่อง แต่ฉันใช้แค่ 3 เครื่องเท่านั้นและฉันต้องการคอมพิวเตอร์สามเครื่อง 1 เซิร์ฟเวอร์อูบุนตูที่บ้าน 1 Thinkpad อูบุนตูแล็ปท็อป (เทียม) และ 1 Macbook Pro สำหรับ iOS พัฒนา
แดน

0

Git ถูกโยกย้ายจากการโค่นล้มในที่สุดก็ย้ายจาก CVS fgit (Disclaimer: โดยฉัน) สำหรับpull push, และstatusgc


0

คุณคิดว่าจะสร้างโครงสร้างพื้นฐานคลาวด์บางส่วนที่นั่นหรือ ดูเหมือนว่าเป็นวิธีเดียวที่เป็นนามธรรมจากเวิร์กสเตชันที่มีบริการ / ไฟล์ / สิ่ง

นี่คือการเชื่อมโยงไปอูบุนตูเมฆ


0

ตอนนี้ฉันใช้Wualaเพื่อทดแทน Dropbox แล้ว ปัญหาหนึ่งคือการขาดการตรวจสอบโฟลเดอร์บน Linux มันเป็นพื้นสแกนไฟล์ทั้งหมดทุกนาที รุ่นถัดไปควรแก้ไขอย่างใดดังนั้นพวกเขาจึงพูด

การซิงค์ตามเวลาจริงบน Linux เป็นปัญหาหากคุณมีโฟลเดอร์นับหมื่น (เช่นที่เก็บ git) เนื่องจากวิธีการใช้งาน inotify สำหรับทุก ๆ โฟลเดอร์จะต้องมี "watch" หนึ่งอัน - ดูตัวอย่างhttps://stackoverflow.com/questions/535768/what-is-a-reasonable-amount-of-inotify-watches-with-linux


Wuala ตอนนี้ตายแล้ว: en.wikipedia.org/wiki/Wuala
Gwyneth Llewelyn
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.