Android

Cách thay đổi tin nhắn cam kết git

Github 03 - Cách sử dụng github - Sửa lỗi trên window - Java Master Edu

Github 03 - Cách sử dụng github - Sửa lỗi trên window - Java Master Edu

Mục lục:

Anonim

Khi làm việc với Git, bạn có thể gặp phải tình huống cần chỉnh sửa thông báo cam kết. Có nhiều lý do khiến bạn muốn thực hiện thay đổi, chẳng hạn như sửa lỗi chính tả, xóa thông tin nhạy cảm hoặc thêm thông tin bổ sung.

Hướng dẫn này giải thích cách thay đổi thông báo của các cam kết Git gần đây nhất hoặc cũ hơn.

Thay đổi cam kết gần đây nhất

Lệnh git commit --amend cho phép bạn thay đổi thông báo cam kết gần đây nhất.

Không được cam kết

Để thay đổi thông báo của lần xác nhận gần đây nhất chưa được đẩy vào kho lưu trữ từ xa, hãy xác nhận lại lần nữa bằng cờ --amend .

  1. Điều hướng đến thư mục kho lưu trữ trong thiết bị đầu cuối của bạn.

    Chạy lệnh sau để sửa đổi (thay đổi) thông báo của cam kết mới nhất:

    git commit --amend -m "New commit message."

    Những gì lệnh làm là ghi đè lên cam kết gần đây nhất với cam kết mới.

    Tùy chọn -m cho phép bạn viết tin nhắn mới trên dòng lệnh mà không cần mở phiên soạn thảo.

Trước khi thay đổi thông báo cam kết, bạn cũng có thể thêm các thay đổi khác mà trước đây bạn đã quên:

git add. git commit --amend -m "New commit message."

Đẩy cam kết

Cam kết sửa đổi (đã thay đổi) là một thực thể mới với SHA-1 khác. Các cam kết trước đó sẽ không còn tồn tại trong nhánh hiện tại.

Nói chung, bạn nên tránh sửa đổi một cam kết đã được thúc đẩy vì nó có thể gây ra vấn đề cho những người dựa trên công việc của họ dựa trên cam kết này. Đó là một ý tưởng tốt để tham khảo ý kiến ​​các nhà phát triển đồng nghiệp của bạn trước khi thay đổi một cam kết đẩy.

  1. Điều hướng đến kho lưu trữ.

    Sửa đổi thông báo của cam kết đẩy mới nhất:

    git commit --amend -m "New commit message."

    Buộc đẩy để cập nhật lịch sử của kho lưu trữ từ xa:

    git push --force branch-name

Thay đổi một Cam kết cũ hoặc Nhiều

Lệnh rebase viết lại lịch sử cam kết và nó không được khuyến khích mạnh mẽ để rebase các cam kết đã được đẩy đến kho lưu trữ Git từ xa.

  1. Điều hướng đến kho lưu trữ chứa thông điệp cam kết bạn muốn thay đổi.

    git rebase -i HEAD~N , trong đó N là số lần xác nhận để thực hiện rebase. Ví dụ: nếu bạn muốn thay đổi lần thứ 4 và lần thứ 5 mới nhất, bạn sẽ gõ:

    git rebase -i HEAD~5

    Lệnh sẽ hiển thị các xác nhận X mới nhất trong trình soạn thảo văn bản mặc định của bạn:

    pick 43f8707f9 fix: update dependency json5 to ^2.1.1 pick cea1fb88a fix: update dependency verdaccio to ^4.3.3 pick aa540c364 fix: update dependency webpack-dev-server to ^3.8.2 pick c5e078656 chore: update dependency flow-bin to ^0.109.0 pick 11ce0ab34 fix: Fix spelling. # Rebase 7e59e8ead..11ce0ab34 onto 7e59e8ead (5 commands)

    Di chuyển đến các dòng của thông điệp cam kết bạn muốn thay đổi và thay thế pick bằng reword :

    reword 43f8707f9 fix: update dependency json5 to ^2.1.1 reword cea1fb88a fix: update dependency verdaccio to ^4.3.3 pick aa540c364 fix: update dependency webpack-dev-server to ^3.8.2 pick c5e078656 chore: update dependency flow-bin to ^0.109.0 pick 11ce0ab34 fix: Fix spelling. # Rebase 7e59e8ead..11ce0ab34 onto 7e59e8ead (5 commands)

    Lưu các thay đổi và đóng trình chỉnh sửa.

    Đối với mỗi cam kết được chọn, một cửa sổ soạn thảo văn bản mới sẽ mở ra. Thay đổi thông báo cam kết, lưu tệp và đóng trình chỉnh sửa.

    fix: update dependency json5 to ^2.1.1

    Buộc đẩy các thay đổi vào kho lưu trữ từ xa:

    git push --force branch-name

Phần kết luận

Để thay đổi thông báo cam kết gần đây nhất, hãy sử dụng git commit --amend và để thay đổi một tin nhắn cam kết cũ hơn hoặc nhiều lần sử dụng git rebase -i HEAD~N

Đừng sửa đổi các cam kết vì nó có thể gây ra nhiều vấn đề cho các đồng nghiệp của bạn.