Làm thế nào để lưu tin nhắn cam kết git từ windows cmd?


200

Tôi chạy git từ dòng lệnh.

Làm thế nào để lưu thông điệp cam kết?

Ý tôi là tôi nên nhấn phím nào để đi qua màn hình này:

Giao diện tin nhắn cam kết

Câu trả lời:


298

Bạn đang ở trong vim. Để lưu các thay đổi và thoát, gõ:

<esc> :wq <enter>

Điều đó có nghĩa là:

  • Nhấn Escape. Điều này sẽ đảm bảo bạn đang ở chế độ lệnh
  • gõ vào :wq
  • nhấn Return

Một thay thế mà stdcall trong các ý kiến ​​đề cập là:

  • nhấn Escape
  • Nhấn shift+ Z shift+ Z(vốn Zhai lần).

1
Cảm ơn rất nhiều, thực sự đánh giá cao nó!
Jackson Publick

1
Sau đó là <esc> ZZ, để đảm bảo bạn đang ở chế độ bình thường.
Ikke

tôi yêu bạn @stdcall: D đã chính xác tìm kiếm khóa ngắn này
Muhammad Omer Aslam

3
Tôi kiểm tra mọi thứ trong khoảng nửa giờ cho đến khi tôi nhận được sự thật, rằng việc nhập [shift] + [z, z] sẽ đưa tôi ra khỏi trình chỉnh sửa này trong windows !! Là gì: wq? Tôi thậm chí không thể gõ tin nhắn khác, mặc dù tôi có thể xóa tin nhắn cũ. Có bất kỳ tài liệu tham khảo nào về các phím tắt hoặc một cái gì đó tương tự, để tìm hiểu cách điều hướng qua "trình soạn thảo" này không?
Martin P.

Đối với tôi, tôi đã phải nhấn <esc> và sau đó [shift] + [z, z]. Tôi nghĩ rằng <esc> là thoát ra khỏi chế độ chèn. Điều này có thể giúp đỡ cho người khác.
marvelTracker

58

Tôi tin rằng câu trả lời THỰC cho câu hỏi này là một lời giải thích về cách bạn định cấu hình trình chỉnh sửa nào sẽ sử dụng theo mặc định, nếu bạn không thoải mái với Vim.

Đây là cách cấu hình Notepad chẳng hạn, hữu ích trong Windows:

git config --global core.editor "notepad"

Gedit, thân thiện với Linux hơn:

git config --global core.editor "gedit"

Bạn có thể đọc cấu hình hiện tại như thế này:

git config core.editor

5
Notepad không ghi các tệp có kết thúc dòng Unix và không thể được sử dụng (một mình) như core.editor. GitPad, hoặc một trình bao bọc khác, là bắt buộc. github.com/github/GitPad
Edward Thomson

Tôi khuyên bạn nên sử dụng nano để ở trong thiết bị đầu cuối thay vì khởi chạy ứng dụng soạn thảo văn bản. Nó dễ sử dụng hơn nhiều so với vim và thực sự cho bạn thấy những lệnh nào có sẵn ở dưới cùng của màn hình.
Có thể là

Nếu điều này không hoạt động vì (như tôi) bạn đang sử dụng WSL, bạn có thể đặt lại core.editor về mặc định bằng cách sử dụng git config --global --unset-all core.editor. Nếu có một số cách để sử dụng Notepad với WSL, điều đó sẽ hoàn hảo.
Đuổi theo

37

Bạn cũng có thể cam kết với git commit -m "Message goes here"Điều đó dễ dàng hơn.


Đây chính xác là những gì tôi cần! Cảm ơn!
pratyush

Đây thực sự nên là câu trả lời được chấp nhận. Đây là cách ngắn gọn nhất để xuất bản một cam kết bao gồm một thông báo từ CMD / Bash mà không cần sử dụng bất kỳ trình soạn thảo nào.
SentientF Meat

12

Nhấn Shift-zz. Lưu các thay đổi và Thoát. Escape không làm việc cho tôi.

Tôi đang sử dụng Git Bash trong các cửa sổ. Và cũng không thể vượt qua điều này. Thông điệp cam kết của tôi rất đơn giản vì vậy tôi không muốn thêm một máy soạn thảo khác.


8

Nếu bạn nhập git commitnhưng bỏ qua để nhập nhận xét bằng –mtham số, thì Git sẽ mở trình chỉnh sửa mặc định để bạn chỉnh sửa ghi chú đăng ký của mình. Theo mặc định đó là Vim. Bây giờ bạn có thể làm hai điều:

Thay thế 1 - Thoát Vim mà không cần nhập bất kỳ nhận xét và lặp lại

Một bình luận trống hoặc chưa được lưu sẽ được tính là một nỗ lực bị hủy bỏ để thực hiện các thay đổi của bạn và bạn có thể thoát Vim bằng cách làm theo các bước sau:

  1. Nhấn Escđể đảm bảo bạn không ở chế độ chỉnh sửa (bạn có thể nhấn Escnhiều lần nếu không chắc chắn)

  2. :q! enter
    (nghĩa là dấu hai chấm, chữ q, dấu chấm than, nhập), điều này cho Vim loại bỏ mọi thay đổi và thoát)
    Git sau đó sẽ trả lời:

    Hủy bỏ cam kết do thông báo cam kết trống

    và bạn một lần nữa được tự do cam kết sử dụng:

    git commit –m "your comment here"
    

Phương án 2 - Sử dụng Vim để viết bình luận

Thực hiện theo các bước sau để sử dụng Vim để viết bình luận của bạn

  1. Nhấn iđể vào Chế độ chỉnh sửa (hoặc Chế độ chèn).
    Điều đó sẽ để lại cho bạn một con trỏ nhấp nháy trên dòng đầu tiên. Thêm nhận xét của bạn. Nhấn Escđể đảm bảo bạn không ở chế độ chỉnh sửa (bạn có thể nhấn Esc vài lần nếu bạn không chắc chắn)
  2. Nhập :wq enter
    (đó là dấu hai chấm, chữ w, chữ q, nhập), điều này sẽ cho Vim lưu các thay đổi và thoát)

Phản hồi từ https://bloss.msdn.microsoft.com/kristol/2013/07/02/the-git-command-line-101-for-windows-users/


Điều này rất hữu ích! Tôi đã tự hỏi làm thế nào để thực hiện các thông điệp cam kết nhiều dòng
thegreatcoder

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.