อันนี้ฉันคิดว่าจะเป็นแบบฝึกหัดที่ค่อนข้างสั้นและหวังว่าจะสอนได้;) ฉันจะสร้างพื้นที่เก็บข้อมูลขนาดเล็กให้คุณบน github ของฉันเพื่อที่คุณจะได้ส่ง PR ของคุณและในเวลาเดียวกันเพื่อที่คุณจะได้ฝึกฝนวิธีทำทุกขั้นตอนที่ฉันจะปล่อยไว้ด้านล่าง นี่คือลิงค์สำหรับทำการทดสอบ PR ของคุณ:
https://github.com/CodeLabora/TuPrimerPR
มาดูขั้นตอนที่จำเป็นในการส่ง PR อย่างรวดเร็ว:
- ส้อม
- โคลน
- ห่างไกล
- สาขา
- การเปลี่ยนแปลง
- เพิ่ม
- กระทำ
- ผลัก
- PR
ฉันใส่เป็นภาษาอังกฤษเพื่อให้พวกเขาพบตัวเลือกตามลำดับในบรรทัดคำสั่ง git
ส้อม
ส้อมเป็นที่เก็บ Github เวอร์ชันของคุณเอง วิธีนี้ช่วยให้คุณสามารถโคลนงานของโครงการอื่นและมีไว้ในบัญชีของคุณเพื่อให้คุณสามารถเปลี่ยนแปลงสิ่งต่างๆได้โดยไม่ต้องกังวลว่าจะสูญเสียการเปลี่ยนแปลง ในการทำส้อมจำเป็นต้องไปที่หน้านั้นแล้วคลิกที่ปุ่มส้อมที่อยู่ด้านขวาบน
เมื่อทำการแยกแล้วคุณจะเห็นว่าที่เก็บปรากฏในบัญชีของคุณ
โคลน
ตอนนี้เรามีที่เก็บแล้วเราจะทำการโคลนให้ทีมของเรา (ฉันคิดว่าคนที่ใช้ Linux ติดตามฉัน แต่สำหรับผู้ใช้ระบบอื่น ๆ ก็มี git เวอร์ชันที่คุณสามารถดาวน์โหลดได้ในหน้าอย่างเป็นทางการ
และด้วยเทอร์มินัลของเราเราทำสิ่งต่อไปนี้
ด้วยสิ่งนี้เราจะมีโฟลเดอร์ใหม่ชื่อ TuPrimerPR ซึ่งโครงการ Github ของเราจะเป็น เราเข้าสู่โฟลเดอร์ด้วยคำสั่ง« cd TuPrimerPR »และเราจะเห็นว่าภายในเป็นไฟล์ที่อยู่ในส้อมของเรา
(โปรดทราบว่าจำนวนไฟล์อาจแตกต่างกันไปขึ้นอยู่กับสิ่งที่พบในที่เก็บของฉันเมื่อแยกไฟล์)
ห่างไกล
นี่เป็นขั้นตอนที่เป็นทางเลือก แต่เป็นขั้นตอนที่หลีกเลี่ยงปัญหามากมายเมื่อทำงานอย่างต่อเนื่องในโครงการ Fork โดยค่าเริ่มต้นจะสร้างสำเนาที่ถูกต้องของที่เก็บ แต่ในช่วงเวลาที่แน่นอนของการสร้าง ซึ่งหมายความว่าหากโครงการยังคงดำเนินต่อไปพื้นที่เก็บข้อมูลของคุณจะล้าหลังเมื่อเวลาผ่านไปหลายวันหรือหลายชั่วโมง "Git remote" ช่วยให้เราสามารถระบุจุดดาวน์โหลดอื่น (โปรเจ็กต์เดิม) และทำให้สามารถอัปเดตโปรเจ็กต์ของเราได้ทุกครั้งที่เราเห็นว่าโปรเจ็กต์พาเรนต์กำลังถูกอัพเดต
ในการค้นหาโปรเจ็กต์หลักของคุณคุณเพียงแค่ต้องใช้ลิงก์ที่อยู่ด้านล่างชื่อของที่เก็บของคุณ (ตรวจสอบภาพที่สองของส่วน Fork) เราจะเพิ่มข้อมูลนี้ด้านล่าง:
นี่คือโครงการดั้งเดิม (เราจะเรียกมันว่า ต้นน้ำลำธาร เพื่อติดตามโครงการมากมาย)
อย่างที่คุณเห็นฉันได้เพิ่มรีโมตด้วย» git remote add »
ด้วยวิธีนี้เราจะสามารถอัปเดตโครงการได้เมื่อจำเป็น แต่เราจะไม่ใช้ตอนนี้เพราะไม่จำเป็น (ฉันจะอธิบายในภายหลังหรือในโพสต์อื่นขึ้นอยู่กับความต้องการ)
สาขา
สาขา (หรือสาขา) ช่วยให้คุณสร้างส่วนของรหัสที่คุณสามารถทำงานในสภาพแวดล้อมที่แยกได้ ซึ่งหมายความว่าสิ่งที่คุณทำในสาขาไม่จำเป็นต้องมีผลกับโค้ดดั้งเดิมจนกว่าจะมีการใช้» git merge « นอกจากนี้ยังเป็นฟังก์ชันพิเศษที่ Github อนุญาตให้คุณทุกครั้งที่คุณสร้างสาขา Github จะสร้างแหล่งที่มาของ Pull Request โดยอัตโนมัติเมื่อจำเป็น
ตอนนี้เราอยู่ในสาขาพิเศษของเราเราสามารถทำงานเพื่อช่วยเหลือเราได้
การเปลี่ยนแปลง
ฉันจะเพิ่มไฟล์สองสามไฟล์เพื่อให้คุณเห็นว่ามันเสร็จแล้ว
"Touch" ให้เราสร้างไฟล์เปล่า (ถ้าไม่มี) ด้วยวิธีนี้เราสามารถไปยังขั้นตอนต่อไปได้
เพิ่ม
» Git add »ช่วยให้เราสามารถเพิ่มไฟล์ลงในคอมมิตของเราได้ (ฉันจะอธิบายในภายหลัง) หากต้องการดูว่าคุณสามารถเพิ่มไฟล์ใดได้บ้างคุณสามารถใช้คำสั่ง» git status »
ด้วยเหตุนี้เราจึงมีทุกอย่างพร้อมสำหรับคำมั่นสัญญาของเรา
กระทำ
การกระทำคือเครื่องหมาย (หรือเหตุการณ์สำคัญ) ในช่วงเวลา พวกเขากำหนดสถานะสำหรับไฟล์ทั้งหมดในโปรเจ็กต์และสะสมการเปลี่ยนแปลงที่จำเป็นเพื่อให้ได้รับตั้งแต่จุดเริ่มต้นของโปรเจ็กต์จนถึงสถานะปัจจุบัน ฟังดูซับซ้อนเล็กน้อย แต่ค่อนข้างเรียบง่ายเพียงจำไว้ว่าสิ่งเหล่านี้คือบันไดของโครงการของคุณ เราเขียน»คอมมิต»และเราจะได้หน้าต่างสำหรับเขียนข้อความคอมมิตของเรา
และในตอนท้ายและบันทึกข้อความเราจะเห็นสิ่งต่างๆเช่น:
ที่ซึ่งสรุปสิ่งที่กระทำจะแสดง
ผลัก
ด้วยการผลักดันเรากำลังอัปโหลดไปยังบัญชี Github ของเราการกระทำทั้งหมดที่เรามีบนคอมพิวเตอร์ที่ไม่ได้อยู่ในพื้นที่เก็บข้อมูลของเราบนอินเทอร์เน็ต ซึ่งจะช่วยให้ Github สร้าง PR ใหม่โดยอัตโนมัติ
สังเกตว่าเราใช้ชื่อสาขาของเราและถามชื่อผู้ใช้และรหัสผ่านของเรา ในตอนท้ายมันแสดงให้เราเห็นว่าสาขา myImprove ถูกสร้างขึ้นภายในบัญชี Github ของเรา มาดูกันว่าเราประสบความสำเร็จอะไรบ้างในเบราว์เซอร์ 😉
PR
อย่างที่คุณเห็นมีการสร้างบรรทัดใหม่ที่ระบุว่า "Compare & Pull request" ฟังก์ชัน Github นี้ช่วยให้เราสามารถสร้าง PR ได้ด้วยวิธีง่ายๆเราจะคลิกเพื่อดูว่าเกิดอะไรขึ้น
Github ค่อนข้างฉลาด ดังที่คุณเห็นบางส่วนของการคอมมิตจะถูกเพิ่มลงในแบบฟอร์มสำหรับการส่ง จำเป็นต้องคลิกปุ่มเท่านั้นเท่านี้เอง🙂ง่าย ๆ
พิเศษ
นี่คือเบื้องหลังของโครงการ PR จะปรากฏขึ้นและผู้จัดการจะตัดสินใจว่าจะยอมรับหรือไม่หรือเขียนข้อความเพิ่มเติม ในกรณีของฉันฉันจะยอมรับมันทันที
เมื่อการรวมเสร็จสิ้นพวกเขาจะสามารถดูบันทึกการคอมมิตของโปรเจ็กต์และเห็นชื่อของพวกเขาในนั้น
แต่ตอนนี้เรามีปัญหา การกระทำนั้นไม่ปรากฏใน nuestro ที่เก็บเฉพาะในโครงการ คุณจำข้อความระยะไกลของเราได้ไหม? ตอนนี้คือเมื่อมันจ่ายออก🙂
เรากลับไปที่สาขาหลักของเราและทำสิ่งต่อไปนี้:
ด้วยเหตุนี้เราจึงดาวน์โหลดข้อมูลทั้งหมดของโครงการเดิมให้กับทีมของเรา อย่างที่คุณเห็นความมุ่งมั่นของเราปรากฏที่นั่น ตอนนี้เราจะบันทึกงานทั้งหมดนี้ไว้ในที่เก็บ Github ของเราเพื่อให้สามารถลบสาขาที่มีการสนับสนุนที่พวกเขาได้เพิ่มลงในโครงการแล้ว
ตอนนี้เรามีที่เก็บ Github ที่อัปเดตแล้วเรากำลังจะลบสาขาของเรา แต่ก่อนอื่นเราต้องแน่ใจว่าอยู่ในสาขาหลักของเรา (หลัก)
อย่างที่คุณเห็นว่าฉันมีข้อผิดพลาดเล็กน้อยนี่เป็นเพราะฉันอยู่ในสาขา myImprovement ของฉันเมื่อฉันต้องการลบ สิ่งนี้ได้รับการแก้ไขโดยการกลับไปที่สาขาหลัก
ข้อสรุป
ทำได้🙂ง่ายๆเพียงแค่นั้น เมื่อคุณเข้าใจความลับดำมืดของ Github ในการส่ง PR แล้วฉันหวังว่าจะได้เห็นการมีส่วนร่วมของคุณในโครงการต่างๆ และถ้าคุณต้องการคุณสามารถฝาก PR แรกไว้ในที่เก็บของฉัน😉เพื่อจดจำ
ฉันยังไม่ได้ใช้ประโยชน์จาก Git หนึ่งพันรายการ (ตาไม่ใช่ Github) และอย่างที่คุณคาดหวังจากนักพัฒนาที่เชื่อมโยงกับชุมชนเคอร์เนล Git เป็นเครื่องมือที่ทรงพลังมากพร้อมด้วยฟังก์ชันการทำงานนับร้อย
เพื่อให้ได้แนวคิดที่ดีขึ้นว่ามันทำอะไรและพลังทั้งหมดของ Git ฉันขอแนะนำสิ่งนี้ หนังสือ. ฉันแน่ใจว่ามันจะช่วยคุณได้มากในการปรับปรุงการจัดการคอมไพล์
สวัสดีและฉันหวังว่ามันจะช่วยคุณได้😉
การสอนที่ยอดเยี่ยมหวังว่าคุณจะสามารถเจาะลึก Git ได้ต่อไป ขอขอบคุณ!
ชัดเจน! ฉันจะเพิ่มเนื้อหาให้เร็วที่สุดเกี่ยวกับเรื่องนี้และอื่น ๆ อีกมากมาย
Excelente
มันให้บริการคุณดีแค่ไหน😉ทักทาย
ทันทีที่ทำได้ฉันก็ฝึกฝนขอบคุณมากบทช่วยสอนนี้เป็นสิ่งที่ฉันมองหามานาน แต่ไม่พบ!
อธิบายได้ดีมากตั้งแต่พื้นฐานขอบคุณ ฉันจะปรับปรุงคำบรรยายเมื่อคุณมีเวลา