push.default
กำหนด action git push ที่ควรทำหากไม่มีการระบุ refspec อย่างชัดเจน ค่าที่ต่างกันนั้นเหมาะสมสำหรับเวิร์กโฟลว์เฉพาะ ตัวอย่างเช่นในเวิร์กโฟลว์ส่วนกลางล้วน ๆ (เช่นแหล่งดึงข้อมูลเท่ากับปลายทางของการส่งข้อมูล) ต้นน้ำอาจเป็นสิ่งที่คุณต้องการ ค่าที่เป็นไปได้คือ:
ไม่มีอะไร - อย่าผลักสิ่งใด (ข้อผิดพลาดออก) เว้นแต่จะมีการให้ผู้อ้างอิงอย่างชัดเจน สิ่งนี้มีไว้สำหรับผู้ที่ต้องการหลีกเลี่ยงความผิดพลาดเป็นหลักโดยชัดเจน
กระแสน้ำ - ผลักดันสาขาปัจจุบันเพื่ออัพเดทสาขาที่มีชื่อเดียวกันกับที่สิ้นสุดการรับ ทำงานได้ทั้งในส่วนกลางและไม่ใช่เวิร์กโฟลว์
อัปสตรีม - ผลักดันสาขาปัจจุบันกลับไปที่สาขาซึ่งโดยปกติแล้วการเปลี่ยนแปลงจะถูกรวมเข้ากับสาขาปัจจุบัน (ซึ่งเรียกว่า @ {upstream}) โหมดนี้เหมาะสมถ้าคุณกำลังผลักดันไปยังพื้นที่เก็บข้อมูลเดียวกับที่คุณมักจะดึงจาก (เช่นเวิร์กโฟลว์กลาง)
เรียบง่าย - ในเวิร์กโฟลว์ส่วนกลางทำงานเหมือนต้นน้ำที่มีความปลอดภัยเพิ่มเพื่อปฏิเสธที่จะผลักดันถ้าชื่อของสาขาต้นน้ำแตกต่างจากท้องถิ่น
เมื่อกดไปที่รีโมตที่แตกต่างจากรีโมตที่คุณดึงตามปกติให้ทำงานเป็นปัจจุบัน นี่คือตัวเลือกที่ปลอดภัยที่สุดและเหมาะสำหรับผู้เริ่มต้น
โหมดนี้จะกลายเป็นค่าเริ่มต้นใน Git 2.0
การจับคู่ - ผลักสาขาทั้งหมดที่มีชื่อเดียวกันทั้งสองด้าน สิ่งนี้ทำให้พื้นที่เก็บข้อมูลที่คุณผลักดันให้จำชุดของสาขาที่จะถูกผลักออก (เช่นถ้าคุณดันดูแลและหลักที่นั่นและไม่มีสาขาอื่น ๆ พื้นที่เก็บข้อมูลที่คุณผลักดันจะมีสองสาขานี้และดูแลท้องถิ่นและต้นแบบ จะถูกผลักไปที่นั่น)
ในการใช้โหมดนี้อย่างมีประสิทธิภาพคุณต้องตรวจสอบให้แน่ใจว่าสาขาทั้งหมดที่คุณกดออกนั้นพร้อมที่จะถูกผลักออกไปก่อนที่จะทำการกด git เนื่องจากจุดรวมของโหมดนี้คือการอนุญาตให้คุณกดสาขาทั้งหมดในครั้งเดียว หากคุณมักจะทำงานในสาขาเดียวและจบผลลัพธ์ในขณะที่สาขาอื่นยังไม่เสร็จโหมดนี้ไม่เหมาะสำหรับคุณ นอกจากนี้โหมดนี้ไม่เหมาะสำหรับการผลักดันเข้าไปในพื้นที่เก็บข้อมูลส่วนกลางที่ใช้ร่วมกันเนื่องจากคนอื่นอาจเพิ่มสาขาใหม่ที่นั่นหรืออัปเดตเคล็ดลับของสาขาที่มีอยู่นอกการควบคุมของคุณ
นี่เป็นค่าเริ่มต้นในขณะนี้ แต่ Git 2.0 จะเปลี่ยนค่าเริ่มต้นเป็นแบบง่าย