คำถามติดแท็ก version-control

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

13
ฉันจะหลีกเลี่ยงการพิมพ์“ git” ที่จุดเริ่มต้นของทุกคำสั่ง Git ได้อย่างไร
ฉันสงสัยว่ามีวิธีหลีกเลี่ยงการพิมพ์คำgitที่จุดเริ่มต้นของทุกคำสั่ง Git หรือไม่ มันจะดีถ้ามีวิธีที่จะใช้เป็นgitคำสั่งเพียงครั้งเดียวในการเริ่มต้นหลังจากที่เปิดพร้อมรับคำสั่งจะได้รับในโหมด "Git" ตัวอย่างเช่น: git> หลังจากนั้นทุกคำสั่งที่เราพิมพ์จะถูกตีความเป็นค่าเริ่มต้นเป็นคำสั่ง Git ในทำนองเดียวกันกับวิธีที่เราใช้เปลือก MySQL เพื่อเขียนคำสั่งฐานข้อมูล: mysql> การทำเช่นนี้จะช่วยให้ฉันไม่ต้องพิมพ์gitหลายร้อยครั้งต่อวัน หมายเหตุ:ฉันกำลังใช้git-bashบน Windows

3
การลบสาขาในคอมไพล์ลบออกจากประวัติหรือไม่?
มาจาก svn เพิ่งเริ่มทำความคุ้นเคยกับคอมไพล์ เมื่อสาขาถูกลบในคอมไพล์มันจะถูกลบออกจากประวัติ? ใน svn คุณสามารถกู้คืนสาขาได้อย่างง่ายดายโดยการคืนค่าการดำเนินการลบ (ย้อนกลับผสาน) เช่นเดียวกับการลบทั้งหมดใน svn สาขาจะไม่ถูกลบจริงๆมันเพิ่งถูกลบออกจากทรีปัจจุบัน หากสาขาถูกลบออกจากประวัติศาสตร์ในคอมไพล์แล้วจะเกิดอะไรขึ้นกับการเปลี่ยนแปลงที่รวมเข้าด้วยกันจากสาขานั้น? พวกเขายังคงอยู่หรือไม่

7
Project vs Repository ใน GitHub
ใน GitHub ความแตกต่างทางแนวคิดระหว่างโครงการ (ที่สามารถสร้างขึ้นภายในที่เก็บ) และที่เก็บคืออะไร ผมเคยเห็นคำถามที่คล้ายกันหลายคน ( ที่นี่ , ที่นี่และที่นี่ ) ใน SO แต่ไม่มีของพวกเขาอธิบายถึงสิ่งที่เป็นโครงการ GitHub สิ่งที่เป็นที่เก็บ GitHub และเมื่อใช้หนึ่งของพวกเขาแต่ละคน ฉันจะขอบคุณถ้ามีคนอธิบายแต่ละคำศัพท์และให้ตัวอย่างของเวลาที่จะใช้ / สร้างแต่ละคำ ตัวอย่างเช่นถ้าฉันมีแอปพลิเคชั่นต้นแบบหลายตัวทั้งหมดเป็นอิสระจากกันฉันจะสร้างอะไรเพื่อจัดการซอร์สโค้ดของพวกเขาในลักษณะที่เป็นระเบียบ

8
วิธีผสานสาขาปัจจุบันเข้ากับสาขาอื่น
ฉันมีสองสาขาหลักและ dev ฉันทำงานกับ dev เสมอและตรวจสอบรหัสในสาขาหลักเมื่อได้รับการอนุมัติสำหรับการใช้งานจริง เมื่อฉันทำฉันต้องทำสิ่งต่อไปนี้: git checkout master git merge dev git checkout dev นั่น verbose อย่างสุดขีดและเนื่องจากฉันทำมันบ่อยครั้งฉันต้องการที่จะลด มีคำสั่ง git ใดคำสั่งเดียวที่ฉันสามารถใช้เพื่อผสานจาก dev สาขาปัจจุบันของฉันไปยัง master branch อื่น ๆ โดยไม่ต้องเช็กเอากิ่ง master ก่อนหรือไม่? บางสิ่งที่อาจจะชอบ: git merge dev to master จะน่ากลัว ฉันดูเอกสารคอมไพล์และไม่เห็นอะไรเลย

8
เหตุใดฉันจึงต้องผลักดันสาขาใหม่อย่างชัดเจน
ฉันใหม่gitและฉันกำลังฝึกซ้อม ฉันสร้างสาขาท้องถิ่น แต่ฉันเห็นว่าเมื่อฉันทำgit pushสาขาของฉันไม่ได้อัปโหลดไปยังที่เก็บ ฉันต้องทำจริง: git push -u origin --all. ทำไมนี้ การเปลี่ยนแปลงใหม่ที่จะผลักดันเป็นค่าเริ่มต้นไม่ใช่สาขาใช่หรือไม่ ทำไมฉันต้องเรียกใช้คำสั่งที่สอง


17
รูปแบบ SVN ละเว้นทั่วไปที่ดีที่สุด
อะไรคือ SVN ทั่วไปที่ดีที่สุด (หรือดีที่สุด) ละเว้นรูปแบบที่จะใช้? มีหลาย IDE, บรรณาธิการ, คอมไพเลอร์, ปลั๊กอิน, แพลตฟอร์ม, ฯลฯ ไฟล์เฉพาะและไฟล์บางประเภทที่ "ทับซ้อน" (เช่นที่ต้องการสำหรับโครงการบางประเภทและไม่ใช่สำหรับคนอื่น) อย่างไรก็ตามมีชนิดของไฟล์จำนวนมากที่คุณไม่เคยต้องการรวมอยู่ในการควบคุมแหล่งข้อมูลโดยอัตโนมัติโดยไม่คำนึงถึงสภาพแวดล้อมการพัฒนาเฉพาะของคุณ คำตอบสำหรับคำถามนี้จะทำหน้าที่เป็นจุดเริ่มต้นที่ดีสำหรับโครงการใด ๆ - เพียงต้องการให้พวกเขาเพิ่มรายการเฉพาะสภาพแวดล้อมที่พวกเขาต้องการ สามารถปรับใช้กับระบบควบคุมเวอร์ชันอื่น ๆ (VCS) ได้เช่นกัน

5
ฉันจะผลักดันสาขา Git ท้องถิ่นไปยังรีโมทด้วยชื่ออื่นได้อย่างง่ายดายได้อย่างไร?
ฉันสงสัยว่ามีวิธีที่ง่ายในการผลักดันและดึงสาขาท้องถิ่นด้วยสาขาระยะไกลที่มีชื่อแตกต่างกันโดยไม่ต้องระบุชื่อทั้งสอง ตัวอย่างเช่น: $ git clone myrepo.git $ git checkout -b newb $ ... $ git commit -m "Some change" $ git push origin newb:remote_branch_name ตอนนี้ถ้ามีคนอัปเดต remote_branch_name ฉันสามารถ: $ git pull และทุกอย่างถูกผสาน / ส่งต่ออย่างรวดเร็ว อย่างไรก็ตามหากฉันทำการเปลี่ยนแปลงใน "newb" ในพื้นที่ของฉันฉันไม่สามารถ: $ git push แต่ฉันต้อง: % git push origin newb:remote_branch_name ดูเหมือนโง่เล็กน้อย หากgit-pullใช้git-config branch.newb.mergeเพื่อกำหนดตำแหน่งที่จะดึงออกมาทำไมจึงไม่มีgit-pushตัวเลือกการกำหนดค่าที่คล้ายกัน มีทางลัดที่ดีสำหรับเรื่องนี้หรือฉันควรทำต่อไปอีกนานไหม?

6
ฉันจะกดเริ่มต้นไปยังที่เก็บระยะไกลด้วย Git ได้อย่างไร
ฉันได้อ่านบทช่วยสอนที่นับไม่ถ้วนและฉันก็เข้ามาใกล้ นี่คือสิ่งที่ฉันได้รับ: - ฉันใช้ RubyMine บนเดสก์ท็อป Windows ของฉัน - ฉันได้ติดตั้ง Git ในบัญชีโฮสติ้ง WebFaction ตามคำแนะนำแล้ว - ดูเหมือนว่า Git จะทำงานได้ดีบนทั้งสองเครื่อง นี่คือสิ่งที่ผมกำลังทำ: 1. บนเครื่องเซิร์ฟเวอร์: mkdir โครงการ b. git init c. คอมไพล์เพิ่ม d คอมไพล์กระทำ <--- "ไม่มีอะไรที่จะกระทำ" 2. ในลูกค้า: สร้างโครงการใหม่ใน RubyMine ข "git init" ในไดเรกทอรีบนสุดของโครงการ c "ผลักดันการเปลี่ยนแปลง" ไปยังเซิร์ฟเวอร์ <---- "ไม่สามารถส่งการอ้างอิงถึง ... " ฉันพลาดขั้นตอนอะไรบ้าง

4
สาขาการติดตามคืออะไร
บางคนสามารถอธิบาย "สาขาการติดตาม" ตามที่ใช้กับคอมไพล์ได้หรือไม่ นี่คือคำจำกัดความจากgit-scm.com : 'การติดตามสาขา' ใน Git เป็นสาขาท้องถิ่นที่เชื่อมต่อกับสาขาระยะไกล เมื่อคุณกดและดึงที่สาขานั้นมันจะผลักและดึงไปยังสาขาระยะไกลที่เชื่อมต่อโดยอัตโนมัติ ใช้สิ่งนี้หากคุณดึงจากสาขาต้นน้ำเดียวกันไปยังสาขาใหม่เสมอและหากคุณไม่ต้องการใช้ "git pull" อย่างชัดเจน น่าเสียดายที่การเป็นมือใหม่กับคอมไพล์และมาจาก SVN คำจำกัดความนั้นไม่สมเหตุสมผลเลยสำหรับฉัน ฉันกำลังอ่านผ่าน " คู่มือปฏิบัติเพื่อ Git " (หนังสือยอดเยี่ยมโดยวิธี) และพวกเขาดูเหมือนจะแนะนำว่าสาขาการติดตามเป็นสิ่งที่ดีและหลังจากสร้างระยะไกลครั้งแรกของคุณ (ที่มาในกรณีนี้) คุณควร ตั้งค่าสาขาหลักของคุณให้เป็นสาขาการติดตาม แต่น่าเสียดายที่ไม่ครอบคลุมถึงสาเหตุที่สาขาการติดตามเป็นสิ่งที่ดีหรือประโยชน์ที่คุณจะได้รับจากการตั้งค่าสาขาหลักของคุณให้เป็นสาขาการติดตามของที่เก็บต้นฉบับของคุณ มีคนช่วยสอนฉันให้เป็นภาษาอังกฤษได้ไหม

10
TFS: คุณจะเลิกทำการชำระเงินของไฟล์ที่ไม่ได้แก้ไขในไฟล์แบตช์ได้อย่างไร
เราใช้ไฟล์แบตช์เพื่อสร้างรหัสและจะตรวจสอบไฟล์ที่สร้างจาก Team Foundation Server (TFS) โดยอัตโนมัติเพื่อให้สามารถสร้างใหม่ได้ ไฟล์เหล่านี้ส่วนใหญ่ไม่ได้ถูกแก้ไข แต่ตัวสร้างไม่ทราบล่วงหน้า คำสั่ง "tfs undo" เลิกทำการเช็คเอาต์ แต่จะแจ้งให้หากมีการแก้ไข (ซึ่งเราไม่ต้องการจะทำ) นอกจากนี้เรายังไม่ต้องการตรวจสอบไฟล์ที่สร้างขึ้นทันที มีคำสั่ง (หรือชุดคำสั่ง) เพื่อยกเลิกการเช็กเอาต์ไฟล์ที่ไม่ได้แก้ไขทั้งหมดโดยไม่แจ้งผู้ใช้หรือไม่

24
วิธีที่ดีที่สุดในการควบคุมเวอร์ชันสำหรับ MS Excel
คุณใช้ระบบควบคุมรุ่นใดกับ MS Excel (2003/2007) คุณจะแนะนำอะไรและทำไม คุณพบข้อ จำกัด อะไรบ้างกับระบบควบคุมเวอร์ชันยอดนิยมของคุณ หากต้องการระบุในมุมมองต่อไปนี้เป็นกรณีการใช้งานสองกรณี: การควบคุมเวอร์ชันสำหรับโมดูล VBA มีมากกว่าหนึ่งคนกำลังทำงานกับสเปรดชีต Excel และพวกเขาอาจทำการเปลี่ยนแปลงในแผ่นงานเดียวกันซึ่งพวกเขาต้องการผสานและรวมเข้าด้วยกัน แผ่นงานนี้อาจมีสูตรข้อมูลแผนภูมิ ฯลฯ ผู้ใช้ไม่ได้มีความรู้ด้านเทคนิคมากเกินไปและระบบควบคุมเวอร์ชันที่น้อยกว่าก็ใช้งานได้ดีกว่า ข้อ จำกัด ของพื้นที่คือการพิจารณา เป็นการดีที่จะบันทึกเฉพาะการเปลี่ยนแปลงที่เพิ่มขึ้นแทนที่จะบันทึกสเปรดชีต Excel ทั้งหมด

4
การย้ายไฟล์หลายไฟล์ใน TFS Source Control
ฉันใช้ Team Foundation Server 2008 (SP 1) และฉันต้องการย้ายหลายไฟล์จากโฟลเดอร์หนึ่งไปยังอีกโฟลเดอร์หนึ่ง (เพื่อเก็บประวัติไฟล์) นอกเหนือจาก Team Explorer (ด้วย SP 1) ฉันยังได้ติดตั้ง TFS Power Tools ล่าสุด (ตุลาคม 2551) (สำหรับการรวม Windows Shell) ตอนนี้ปัญหาคือฉันไม่สามารถเลือกและย้ายไฟล์หลายไฟล์ผ่านทางเชลล์หรือหน้าต่าง Source Control Explorer ฉันสามารถย้ายแต่ละไฟล์ (โดยการคลิกขวา + "ย้าย") และฉันสามารถย้ายทั้งโฟลเดอร์ (การทำงานเดียวกัน) แต่เมื่อฉันเลือกหลายไฟล์ (ในโฟลเดอร์) รายการบริบท "ย้าย" จะเป็นสีเทา / ปิดการใช้งาน ไม่มีใครรู้ว่าสิ่งนี้เป็นไปได้หรือไม่และถ้าไม่ .. ทำไมไม่! ใครสามารถแนะนำวิธีแก้ปัญหาที่ไม่ซับซ้อนเกินไป? โปรดลงคะแนนที่นี่: https://connect.microsoft.com/VisualStudio/feedback/details/715041/support-moving-multiple-files-in-tfs-source-control-explorer และที่นี่ http: …

3
Git แตกต่างระหว่างสาขาปัจจุบันและหลัก แต่ไม่รวมถึงการไม่ผูกมัดปริญญาโท
ฉันต้องการความแตกต่างของการเปลี่ยนแปลงทั้งหมดในสาขาที่ยังไม่ได้รวมเข้ากับปริญญาโท ฉันเหนื่อย: git diff master git diff branch..master git diff branch...master อย่างไรก็ตามในแต่ละกรณีเหล่านี้ diff มีเนื้อหาในต้นแบบที่ยังไม่ได้รวมเข้ากับสาขาของฉัน มีวิธีการแตกต่างระหว่างสาขาของฉันและเจ้านายที่แยกการเปลี่ยนแปลงในต้นแบบที่ยังไม่ได้ถูกรวมเข้าไปในสาขาของฉันหรือยัง

23
คุณพัฒนาต่อไปในสาขาหรือในลำตัว? [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้มีแนวโน้มที่จะเรียกร้องให้มีการอภิปรายโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา สมมติว่าคุณกำลังพัฒนาผลิตภัณฑ์ซอฟต์แวร์ที่มีการเผยแพร่เป็นระยะ แนวปฏิบัติที่ดีที่สุดเกี่ยวกับการแตกแขนงและการผสานคืออะไร แบ่งออกเป็นระยะ ๆ ออกสู่สาธารณะ (หรือลูกค้าของคุณ) และจากนั้นพัฒนาต่อไปบนลำตัวหรือพิจารณาลำตัวที่มั่นคงรุ่นติดแท็กเป็นรุ่นเป็นระยะและทำการทดลองในสาขา คนคิดว่าลำต้นเป็น "ทองคำ" หรือถือเป็น "กล่องทราย"?

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