Undo trong git
Hello ae lại là mình với những bài về git đây 😜. Trong bài viết này mình sẽ undo lại những thay đổi về trạng thái ban đầu ae cùng tham khảo nhé
Hoàn tác những file ở local changes về trạng thái ban đầu:
git checkout name_file_change.ext
Hoặc git restore name_file_change.ext
Hoặc khi change Vscode bên thanh bar trái cũng có xuất hiện những file change mình muốn undo file nào thì chỉ cần chọn vào mũi tên back rồi Discard Changes nó là oke
Undo những file ở khu vực stage changes, khu vực mà sau khi mình add. lên
git reset name_file_change.ext
Hoặc git restore -S name_file_change.ext
Hoặc khi add rồi bên thanh bar trái cũng có xuất hiện những file Staged Changes mình muốn quay lại thì chỉ cần chọn dấu – là oke
Undo những file ở khu vực commited trong quá khứ
Lấy mã commit đó, có thể lấy bằng cách click source control bên thanh bar trái, phía dưới có mục file history list ra những commit ở file này. Hoặc git log –oneline
git restore --source=mã_commit name_file_change.ext
Hoặc có thể click chuột phải tại file history rồi chọn Restore(Checkout)
Undo commit với git reset
git reset mã_commit => Đưa thay đổi về khu vực Changes git reset –sort mã_commit => Đưa thay đổi về Staged Changes git reset –hard mã_commit => Mất luôn thay đổi. Ít dùng do khá nguy hiểm vì nó xóa luôn commit sau nó cmnr =)) git reset –merger mã_commit => Giống –hard nhưng an toàn hơn, chỉ làm mất những thay đổi cần thiết. Còn những thứ mình đang code vẫn giữ nguyên Có thể undo commit gần nhất bằng source controls trong Vscode Hoặc nhanh hơn thì git log –oneline rồi muốn reset commit nào thì Ctrl+click mã hash đó rồi chọn Reset name_branch to commit rồi chọn option những bên trên Và sau khi reset muốn push lên phải git push -f nghen. Vì nó sẽ đè lên các commit của origin