Cách thay đổi cam kết Git bằng cách sử dụng tùy chọn sửa đổi

How Change Git Commit Using Amend Option



Các ` git cam kết Lệnh `được sử dụng để xác nhận bất kỳ thay đổi nào được thực hiện trong kho lưu trữ và git lưu giữ lịch sử của từng tác vụ đã cam kết. Đôi khi người dùng cần thay đổi thông báo đã cam kết trước hoặc sau khi xuất bản kho lưu trữ. Người dùng yêu cầu viết lại lịch sử git để thay đổi cam kết cũ hơn hoặc mới hơn của kho lưu trữ. Các –Amend tùy chọn được sử dụng với ` git cam kết `để viết lại lịch sử git. Hướng dẫn này giải thích cách tùy chọn này có thể được áp dụng cho kho lưu trữ git cục bộ và từ xa để thay đổi thông báo git commit hoặc git commit.

Điều kiện tiên quyết:

Cài đặt GitHub Desktop.

GitHub Desktop giúp người dùng git thực hiện các tác vụ liên quan đến git bằng đồ họa. Bạn có thể dễ dàng tải xuống trình cài đặt mới nhất của ứng dụng này cho Ubuntu từ github.com. Bạn phải cài đặt và cấu hình ứng dụng này sau khi tải xuống để sử dụng nó. Bạn cũng có thể xem hướng dẫn cài đặt GitHub Desktop trên Ubuntu để biết quá trình cài đặt đúng cách.







Tạo tài khoản GitHub

Bạn sẽ yêu cầu tạo tài khoản GitHub để kiểm tra kết quả đầu ra của các lệnh trong máy chủ từ xa.



Tạo kho lưu trữ cục bộ và từ xa

Bạn phải tạo một kho lưu trữ cục bộ và xuất bản kho lưu trữ đó trong máy chủ từ xa để kiểm tra các lệnh được sử dụng trong hướng dẫn này. Đi tới thư mục kho lưu trữ cục bộ để kiểm tra các lệnh được sử dụng trong hướng dẫn này.



Thay đổi cam kết cuối cùng:

Bạn phải kiểm tra trạng thái hiện tại của kho lưu trữ cục bộ và thực hiện một số tác vụ cam kết trước khi áp dụng bất kỳ thay đổi nào cho lần cam kết cuối cùng. Kho lưu trữ cục bộ có tên cửa hàng sách đã được sử dụng để kiểm tra các lệnh được sử dụng trong hướng dẫn này. Chạy lệnh sau từ vị trí kho lưu trữ để kiểm tra trạng thái cam kết hiện tại của kho lưu trữ.





$git cam kết

Kết quả đầu ra sau đây cho thấy có hai tệp chưa được theo dõi có tên booklist.phpbooktype.php.



Chạy các lệnh sau để thêm hai tệp trong kho lưu trữ với thông báo cam kết và kiểm tra trạng thái của kho lưu trữ sau khi cam kết.

$git thêmbooklist.php

$git cam kết -NS 'tệp danh sách sách đã được thêm.'

$git thêmbooktype.php

$git cam kết -NS 'booktype file đã được thêm.'

$git cam kết

Kết quả sau đây cho thấy rằng booklist.phpbooktype.php các tệp được thêm với các thông báo cam kết. Tiếp theo, khi đầu ra của lệnh cam kết cho thấy cây làm việc đã sạch.

Bạn có thể thay đổi thông báo cam kết cuối cùng bằng cách sử dụng trình chỉnh sửa hoặc thực hiện lệnh của thiết bị đầu cuối. Chạy phần sau ' git cam kết `lệnh với –Amend tùy chọn để thay đổi thông báo cam kết cuối cùng bằng trình soạn thảo văn bản.

$git cam kết --amend

Trình chỉnh sửa sau sẽ mở sau khi thực hiện lệnh trên để sửa đổi thông báo cam kết cuối cùng.

Chạy lệnh sau để thay đổi thông báo cam kết cuối cùng từ thiết bị đầu cuối.

$git cam kết --amend -NS 'Tệp loại sách đã thay đổi một lần nữa.'

Kết quả cho thấy rằng thông báo cam kết cuối cùng đã thay đổi thành Tệp loại sách đã thay đổi một lần nữa.

Thay đổi cam kết cũ:

Cam kết cũ hơn hoặc nhiều cam kết có thể được thay đổi bằng cách sử dụng lệnh `git rebase` và` git commit –amend`. Lệnh rebase được sử dụng để viết lại lịch sử cam kết, nhưng không nên sử dụng nó cho những cam kết đã được xuất bản trên máy chủ từ xa. Lệnh rebase được sử dụng với số lượng cam kết để thay đổi nhiều cam kết git. Chạy lệnh sau để thay đổi hai thông báo cam kết cuối cùng. Trình chỉnh sửa sẽ được mở với hai thông báo cam kết cuối cùng sau khi thực hiện lệnh.

$git rebase -tôiĐẦU ~2

Đầu ra sau đây hiển thị hai thông báo cam kết cuối cùng của kho lưu trữ với các giá trị SHA cam kết.

Viết lời nói lại thay cho nhặt trên những dòng của thông báo cam kết mà bạn muốn thay đổi. Trong hình ảnh sau đây, việc sửa đổi chỉ được thực hiện cho một lần cam kết. Thông báo cam kết này sẽ được mở để chỉnh sửa trên trình chỉnh sửa khác sau khi lưu tệp hiện tại.

Thông báo cam kết có thể được thay đổi từ trình chỉnh sửa ngay bây giờ. Đây, tin nhắn, Tệp danh sách sách đã được thêm vào . đã thay đổi thành Tệp danh sách sách đã thay đổi.

Nếu bạn chạy lại lệnh rebase, bạn sẽ thấy thông báo cam kết đã thay đổi trong trình chỉnh sửa như hình sau.

Thêm các thay đổi vào lần cam kết cuối cùng:

Giả sử booklist.php tệp đã được sửa đổi sau khi cam kết với kho lưu trữ. Bây giờ, hãy chạy lệnh sau để thêm lại tệp một lần nữa và thay đổi thông báo cam kết cho phần bổ sung này bằng cách sử dụng ` git cam kết `lệnh với –Amend Lựa chọn.

$git thêmbooklist.php

$git cam kết --amend -NS 'Tệp danh sách sách đã được cập nhật.'

Kết quả sau sẽ xuất hiện sau khi thực hiện các lệnh trên.

Nếu bạn không muốn thay đổi thông báo cam kết trước đó sau khi thêm lại tệp, bạn phải sử dụng tùy chọn –no-edit với –Amend tùy chọn với ` git cam kết `lệnh. Lệnh sau sẽ thêm tệp đã sửa đổi vào kho lưu trữ mà không thay đổi thông báo cam kết.

$git cam kết --amend --không chỉnh sửa

Sau khi hoàn thành tất cả các thay đổi trong kho lưu trữ cục bộ, bạn có thể đẩy nội dung cục bộ đến máy chủ từ xa bằng cách thực hiện lệnh đẩy từ thiết bị đầu cuối hoặc bằng cách mở kho lưu trữ trong ứng dụng GitHub Desktop. Giả sử bạn mở kho lưu trữ trên màn hình GitHub và nhấp vào tùy chọn Xuất bản kho lưu trữ. Trong trường hợp đó, hộp thoại sau sẽ xuất hiện để xuất bản nội dung đã sửa đổi của kho lưu trữ cục bộ lên máy chủ từ xa.

Phần kết luận:

Việc sử dụng tùy chọn –amend để thay đổi một hoặc nhiều cam kết git đã được mô tả trong hướng dẫn này bằng cách sử dụng kho lưu trữ demo. Cách thay đổi cam kết có hoặc không thay đổi thông báo cam kết đã được trình bày ở đây để giúp người dùng git hiểu mục đích của việc sử dụng tùy chọn –amend và áp dụng nó trong kho lưu trữ git để thay đổi cam kết.