วิธีการบันทึกคอมไพล์ข้อความจาก windows cmd?


200

ฉันรันคอมไพล์จากบรรทัดคำสั่ง

หนึ่งจะบันทึกข้อความกระทำได้อย่างไร

ฉันหมายความว่าฉันควรกดปุ่มใดเพื่อผ่านหน้าจอนี้:

ส่งข้อความอินเตอร์เฟส

คำตอบ:


298

คุณอยู่ในกลุ่ม หากต้องการบันทึกการเปลี่ยนแปลงและออกให้พิมพ์:

<esc> :wq <enter>

นั่นหมายความว่า:

  • Escapeกด สิ่งนี้จะทำให้แน่ใจว่าคุณอยู่ในโหมดคำสั่ง
  • พิมพ์ใน :wq
  • กด Return

ทางเลือกที่ stdcall ในความคิดเห็นที่กล่าวถึงคือ:

  • กด Escape
  • กดshift+ Z shift+ Z(พิมพ์ใหญ่Zสองครั้ง)

1
ขอบคุณมากขอบคุณจริงๆ!
Jackson Publick

1
มันคือ <esc> ZZ เพื่อให้แน่ใจว่าคุณอยู่ในโหมดปกติ
Ikke

ฉันรักคุณ @stdcall: D ค้นหาคีย์ลัดนี้อย่างแน่นอน
Muhammad Omer Aslam

3
ฉันทดสอบทุกอย่างประมาณครึ่งชั่วโมงจนกระทั่งฉันได้รับข้อเท็จจริงว่าการเข้าสู่ [shift] + [z, z] นำฉันออกจากโปรแกรมแก้ไขนี้ใน windows !! wq คืออะไร ฉันไม่สามารถพิมพ์ข้อความอื่นได้แม้ว่าฉันจะสามารถลบข้อความเก่าได้ มีการอ้างอิงถึงทางลัดหรืออะไรทำนองนั้นเพื่อเรียนรู้วิธีนำทางผ่าน "ตัวแก้ไข" นี้หรือไม่?
Martin P.

สำหรับฉันฉันต้องกด <esc> แล้ว [shift] + [z, z] ฉันคิดว่า <esc> คือออกจากโหมดแทรก สิ่งนี้อาจช่วยให้คนอื่น
marvelTracker

58

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

นี่คือวิธีกำหนดค่า Notepad ตัวอย่างเช่นมีประโยชน์ใน Windows:

git config --global core.editor "notepad"

Gedit, Linux ที่เป็นมิตรมากขึ้น:

git config --global core.editor "gedit"

คุณสามารถอ่านการกำหนดค่าปัจจุบันดังนี้:

git config core.editor

5
Notepad ไม่ได้เขียนไฟล์ที่มีระบบปฏิบัติการยูนิกซ์ปลายสายและไม่สามารถนำมาใช้ (คนเดียว) core.editorในขณะที่ ต้องใช้ GitPad หรือ wrapper อื่น github.com/github/GitPad
Edward Thomson

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

ถ้าเรื่องนี้ไม่ได้เพราะ (เช่นฉัน) คุณกำลังใช้ WSL คุณสามารถรีเซ็ต core.editor git config --global --unset-all core.editorเพื่อเริ่มต้นใช้ หากมีวิธีการใช้ Notepad กับ WSL ก็คงจะสมบูรณ์แบบ
ไล่ล่า

37

นอกจากนี้คุณยังสามารถส่งมอบgit commit -m "Message goes here"สิ่งที่ง่ายกว่า


นี่คือสิ่งที่ฉันต้องการ! ขอบคุณ!
pratyush

นี่ควรเป็นคำตอบที่ได้รับการยอมรับจริงๆ มันเป็นวิธีที่รัดกุมที่สุดในการเผยแพร่การกระทำรวมถึงข้อความจาก CMD / Bash โดยไม่ต้องใช้โปรแกรมแก้ไขใด ๆ เลย
SentientFlesh

12

กด Shift-zz บันทึกการเปลี่ยนแปลงและออก การหลบหนีไม่ได้ผลสำหรับฉัน

ฉันใช้ Git Bash ใน windows และไม่สามารถผ่านพ้นไปได้ ข้อความยืนยันของฉันนั้นง่ายดังนั้นฉันไม่ต้องการเพิ่มเครื่องมือแก้ไขอื่น


8

หากคุณป้อนgit commitแต่ไม่ต้องป้อนความคิดเห็นโดยใช้–mพารามิเตอร์ Git จะเปิดตัวแก้ไขเริ่มต้นเพื่อให้คุณแก้ไขบันทึกการเช็คอินของคุณ โดยค่าเริ่มต้นที่เป็นกลุ่ม ตอนนี้คุณสามารถทำสองสิ่ง:

ทางเลือก 1 - ออกเป็นกลุ่มโดยไม่ต้องใส่ความคิดเห็นและทำซ้ำ

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

  1. กดEscเพื่อให้แน่ใจว่าคุณไม่ได้อยู่ในโหมดแก้ไข (คุณสามารถกดได้Escหลายครั้งหากไม่แน่ใจ)

  2. พิมพ์:q! enter
    (นั่นคือ, เครื่องหมายจุดคู่, ตัวอักษร q, เครื่องหมายอัศเจรีย์, Enter), สิ่งนี้จะบอกให้ Vim ยกเลิกการเปลี่ยนแปลงและออก)
    Git จะตอบกลับ:

    การยกเลิกการมอบหมายเนื่องจากข้อความการส่งว่างเปล่า

    และคุณมีอิสระที่จะยอมรับการใช้อีกครั้ง:

    git commit –m "your comment here"
    

ทางเลือก 2 - ใช้ Vim เพื่อเขียนความคิดเห็น

ทำตามขั้นตอนต่อไปนี้เพื่อใช้ Vim เพื่อเขียนความคิดเห็นของคุณ

  1. กดiเพื่อเข้าสู่โหมดแก้ไข (หรือโหมดแทรก)
    ที่จะทำให้คุณมีเคอร์เซอร์กะพริบในบรรทัดแรก เพิ่มความคิดเห็นของคุณ กดEscเพื่อให้แน่ใจว่าคุณไม่ได้อยู่ในโหมดแก้ไข (คุณสามารถกด Esc ได้หลายครั้งหากคุณไม่แน่ใจ)
  2. พิมพ์:wq enter
    (นั่นคือโคลอน, ตัวอักษร w, ตัวอักษร q, Enter), สิ่งนี้จะบอกให้ Vim บันทึกการเปลี่ยนแปลงและออก)

การตอบสนองจากhttps://blogs.msdn.microsoft.com/kristol/2013/07/02/the-git-command-line-101-for-windows-users/


สิ่งนี้มีประโยชน์มาก! ฉันสงสัยว่าจะทำอย่างไรกับข้อความที่มีหลายสาย
thegreatcoder

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