Xin chào Tôi là một người mới đến git và tôi không hiểu sự khác biệt cơ bản giữa git reset
và git revert
là gì. Có phải git revert
hoàn nguyên quá trình hợp nhất đang được đẩy không?Sự khác nhau giữa git reset và git revert là gì?
Trả lời
Theo như tôi biết, họ đang làm điều hoàn toàn khác.
git revert
nhằm hoàn nguyên tác động của lần commit trước đó. Ví dụ,
A <- B <- C
^HEAD
Nếu tôi tìm thấy BI cam kết trước là sai, và tôi muốn "undo" thay đổi của nó, git-revert
-ing B sẽ gây ra:
A <- B <- C <- B'
^HEAD
mà B'
được đảo ngược sự thay đổi thực hiện trong B.
git reset
là hơn thẳng về phía trước, nó chỉ đơn giản là thiết lập các HEAD để một số cam kết,
A <- B <- C
^HEAD
git-reset
-ting đến B sẽ cung cấp cho bạn
A <- B <- C
^HEAD
Git reset -> di chuyển là đỉnh của một chi nhánh để một khác nhau cam kết. Điều này có thể được sử dụng để xóa các cam kết khỏi nhánh hiện tại. Nó di chuyển nhánh ngược lại bằng các cam kết. Git Hoàn nguyên -> hoàn tác một cam kết bằng cách tạo một cam kết mới. Đây là một cách an toàn để hoàn tác các thay đổi, vì nó không có cơ hội viết lại lịch sử cam kết.
- 1. Sự khác nhau giữa "git checkout -f" và "git reset --hard HEAD" là gì?
- 2. Sự khác nhau giữa git reset --hard và git checkout
- 3. Sự khác biệt giữa git reset --hard và git clean
- 4. Sự khác biệt giữa tệp git reset và git checkout file là gì?
- 5. Sự khác nhau giữa git clone và checkout là gì?
- 6. Sự khác nhau giữa TFS, SVN và GIT là gì?
- 7. Sự khác nhau giữa git reflog và log là gì?
- 8. Sự khác biệt giữa "git reset" so với "git rebase" là gì?
- 9. Sự khác nhau giữa Normalize.css và Reset CSS là gì?
- 10. Sự khác nhau giữa "git checkout <filename>" và "git checkout - - <filename>"
- 11. Sự khác nhau giữa GIT và CVS
- 12. Sự khác nhau giữa gói Git của Chocolatey là gì?
- 13. Có sự khác biệt giữa "git reset --hard hash" và "git checkout hash" không?
- 14. Sự khác nhau giữa 'git format-patch và' git diff 'là gì?
- 15. Sự khác nhau giữa git commit và git commit-tree
- 16. Sự khác nhau giữa git gui, git bash, git CMD
- 17. Sự khác biệt giữa `git fetch origin` và` git remote update origin` là gì?
- 18. git revert - git hỏi parent1 hoặc parent2
- 19. Sự khác biệt giữa git pull và git pull --rebase
- 20. là gì sự khác biệt giữa --mirror git clone git clone và --bare
- 21. Sự khác biệt giữa git push và git pull là gì?
- 22. Sự khác nhau giữa Stacks và Git của IntelliJ là gì?
- 23. Sự khác nhau giữa vimdiff và vimdiff2 trong git là gì?
- 24. Sự khác nhau giữa SVN và Git để hợp nhất là gì?
- 25. Sự khác nhau giữa nhân bản và sao chép một repo git là gì?
- 26. Sự khác nhau giữa Git bỏ qua thư mục và thư mục/* là gì?
- 27. Sự khác nhau giữa "git symbolic-ref HEAD refs/heads/gh-pages" và "git branch gh-pages" là gì?
- 28. Sự khác biệt giữa git remote add và git clone
- 29. Sự khác biệt giữa git-log và git-whatchanged?
- 30. Sự khác nhau giữa "$ (this)" và "this" là gì?
có thể trùng lặp của [Sự khác nhau giữa Git Revert, Checkout và Reset là gì?] (Http://stackoverflow.com/questions/8358035/whats-the-difference-between-git-revert-checkout-and-reset) –
Có tôi đã nhận được giải pháp ở đây cũng như liên kết mà bạn đã đề cập sau khi tôi đăng câu hỏi – arachnid