Mục Lục
So sánh Git Restore và Git Clean
git restore
và git clean
đều là các công cụ mạnh mẽ trong Git, nhưng chúng phục vụ các mục đích khác nhau và hoạt động theo cách khác nhau. Dưới đây là một sự so sánh chi tiết giữa hai lệnh này:
2. Git Restore
- Chức năng chính:
git restore
được sử dụng để khôi phục tệp tin từ commit hoặc từ chỉ mục (index) về trạng thái làm việc (working directory). Nó có thể được sử dụng để hoàn tác các thay đổi chưa được staged hoặc để bỏ staging các tệp tin. - Lưu ý sử dụng:
- Khôi phục thay đổi chưa staged:
git restore <file>
sẽ hoàn tác các thay đổi chưa được staged của tệp tin, khôi phục về trạng thái của commit gần nhất. - Bỏ staging:
git restore --staged <file>
sẽ loại bỏ tệp tin khỏi chỉ mục, giữ các thay đổi của tệp tin trong working directory. - Khôi phục từ commit cụ thể:
git restore --source <commit> <file>
sẽ khôi phục tệp tin từ một commit cụ thể về trạng thái của commit đó.
- Khôi phục thay đổi chưa staged:
- Thay thế:
git restore
chủ yếu thay thế các lệnh nhưgit checkout
vàgit reset
cho việc khôi phục và bỏ staging.
3. Git Clean
- Chức năng chính:
git clean
được sử dụng để xóa các tệp tin hoặc thư mục không được theo dõi (untracked files) trong working directory. Nó giúp làm sạch các tệp tin mà Git không quản lý. - Lưu ý sử dụng:
- Xóa tệp tin không theo dõi:
git clean -f
sẽ xóa tất cả các tệp tin không được theo dõi trong thư mục hiện tại. - Xóa thư mục không theo dõi:
git clean -fd
sẽ xóa cả các tệp và thư mục. - Xem trước các thay đổi:
git clean -n
sẽ hiển thị danh sách các tệp tin sẽ bị xóa mà không thực hiện xóa thực tế. - Làm sạch các tệp tin đã thêm vào .gitignore:
git clean -X
sẽ xóa các tệp tin không theo dõi nhưng vẫn được liệt kê trong.gitignore
.
- Xóa tệp tin không theo dõi:
- Thay thế:
git clean
không thay thế các lệnh khác, nhưng nó bổ sung cho các lệnh khác bằng cách giúp làm sạch các tệp tin không theo dõi, điều mà các lệnh khác không thực hiện được.
4. So sánh cụ thể:
- Mục đích:
git restore
chủ yếu để khôi phục trạng thái của các tệp tin đã được theo dõi hoặc để thay đổi trạng thái của chúng trong chỉ mục.git clean
để xóa các tệp tin hoặc thư mục không được theo dõi, làm sạch working directory.
- Tác động:
git restore
có thể ảnh hưởng đến trạng thái của các tệp tin đang được theo dõi (tracked files) và chỉ mục (index).git clean
xóa hoàn toàn các tệp tin hoặc thư mục không được theo dõi, không ảnh hưởng đến các tệp tin đang được theo dõi.
- Khôi phục dữ liệu:
- Với
git restore
, bạn có thể khôi phục các thay đổi đã thực hiện hoặc khôi phục tệp từ một commit. - Với
git clean
, bạn không thể khôi phục các tệp tin đã bị xóa; chúng bị loại bỏ vĩnh viễn.
- Với
Tóm lại, git restore
và git clean
phục vụ các mục đích khác nhau và có thể được sử dụng cùng nhau để quản lý trạng thái của các tệp tin và thư mục trong dự án Git của bạn.
Xin chào,
99,99% nội dung trên website này là nhờ hỏi ChatGPT, rồi mình biên tập lại để dễ hiểu và dùng lâu dài. Một vài bài tự viết, còn lại là “làm việc nhóm với AI”
Mình lưu tại đây để tra cứu, học tập và chia sẻ với bạn bè. Nếu bạn tìm được gì hữu ích, cứ đọc thoải mái – miễn phí, không quảng cáo.
Mình cũng có vài app cá nhân:
QuestionBank – Ôn thi vào 10 (iOS, Android)
TypingTest by QuestionBank (iOS, Android)
Cảm ơn bạn đã ghé qua!