Skip to main content
  1. Learn center
  2. Software Development
  3. Guides
  4. Git tutorial
  5. Cách sử dụng Git
  6. Cách quản lý lịch sử trong Gi
  7. Kết hợp và di chuyển cam kết
GuidesSoftware DevelopmentBacklog
Git

Project and code management together.

Kết hợp và di chuyển cam kết

Đi đến thư mục git-tutorial/tutorial6 mà bạn đã tải xuống trước đó.

Khi bạn kiểm tra lịch sử của kho lưu trữ này, nó sẽ giống như sau:

Current history

Chúng ta sắp sửa đổi cam kết có tin nhắn “append description of the commit command”.

Để làm điều đó, chúng ta sẽ sử dụng lệnh git rebase -i.

$ git rebase -i HEAD~~

Trình soạn thảo văn bản mặc định của bạn sẽ mở ra liệt kê các cam kết từ HEAD xuống HEAD~~, như hình bên dưới.

pick 9a54fd4 append description of the commit command
  pick 0d4a808 append description of the pull command

  # Rebase 326fc9f..0d4a808 onto d286baa
  #
  # Commands:
  #  p, pick = use commit
  #  r, reword = use commit, but edit the commit message
  #  e, edit = use commit, but stop for amending
  #  s, squash = use commit, but meld into previous commit
  #  f, fixup = like "squash," but discard this commit log message
  #  x, exec = run command (the rest of the line) using shell
  #
  # If you remove a line here THAT COMMIT WILL BE LOST.
  # However, if you remove everything, the rebase will be aborted.
  #

Ở dòng thứ nhất, thay từ pick bằng edit, sau đó lưu và thoát.

Bạn sẽ thấy đầu ra sau và được chuyển ra khỏi cam kết đó.

Stopped at d286baa... append description of the commit command
  You can amend the commit now, with

          git commit --amend

  Once you are satisfied with your changes, run

          git rebase --continue

Mở tệp sample.txt và tạo thay đổi như hình bên dưới.

Anyone can learn Git with this tutorial and Backlog
add: Register a change in an index
commit: Record index state.
pull: Obtain the content of the remote repository

Sử dụng git commit --amend để cam kết thay đổi.

$ git add sample.txt
$ git commit --amend

Sau đó thực hiện git rebase --continue để hoàn tất quá trình nhập nhánh.

$ git rebase --continue

Trong khi chạy nhập nhánh trên nhánh hiện tại của bạn, bạn có thể gặp xung đột trong các thay đổi của mình. Để tiếp tục, bạn phải giải quyết những xung đột đó theo cách thủ công, sau đó chạy git addgit rebase --continue. Không cần phải đưa ra các cam kết mới để giải quyết xung đột.

Tuy nhiên, nếu bạn muốn ngừng nhập nhánh, bạn có thể gọi git rebase --abort, thao tác này sẽ khôi phục và thoát khỏi toàn bộ quy trình và sửa đổi thành công cam kết.

Trong trường hợp bạn chỉ định edit trên nhiều dòng khi gọi git rebase -i, bạn sẽ được nhắc sửa đổi từng cam kết một lần.

Subscribe to our newsletter

Learn with Nulab to bring your best ideas to life