Sau một vài buổi trao đổi với các bạn làm quen với GIT mình tổng hợp một số quan điểm và những điều cần lưu ý khi dùng GIT mà các bạn này hay thắc mắc. Bài này chỉ thích hợp cho mấy bạn đã nắm qua git cơ bản rồi mà chưa có đụng chạm các vấn đề thực tiễn nhiều nhé!
- Lúc commit rồi mà phát hiện ra commit đó sai quá sai thì phải undo hay xóa cái commit đó ra sao?
- Muốn quay lại commit thứ N thì làm sao?
Thông thường và dể dùng nhất là dùng git reset tuy nhiên còn vài cách khác dễ dùng hơn nửa đấy!
Bạn có thể tham khảo tại bài này -> Giới thiệu 3 cách undo commit hoặc loại bỏ commit cơ bản
- Tôi đang chưa hiểu rõ sự khác biệt giữa
git merge
vàgit rebase
là gì? - Tại sao tôi lại dùng git rebase mà không phải merge trong dự án này?
- git rebase nó hay bị nhiều conflict hơn git merge?
- git merge dễ tra log hơn git rebase đúng không vì rebase sửa log lại hết rồi 😐 ?
Lý do áp dụng rebase trong dự án là cho mọi thứ đều dễ dàng xem, điều tra log khi xem qua transport plan trong git. Chính vì thế việc áp dụng rebase cho từng brach riêng biệt là cách để cac developer có tư duy logic tốt log một cách có hệ thống những commit thực sự quan trọng và cần thiết để tra cứu sau này hạn chế commit spam ngoài ý muốn.
Việc conflict trong git là điều không thể tránh khỏi khi merge hay rebase branch khác mà làm chung trên 1 file mình chưa thấy dẫn chứng nào là rebase conflict nhiều hơn merge.
Bạn muôn biết rõ sự khác biệt này thì vào xem bài viết này -> Sự khác biệt giữa git merge và git rebase
- Trước khi commit mới thì mình phải pull code mới về, mà nếu gặp conflict thì phải xử lý, nếu xử lý ko khéo thì mất code của mình làm, vậy phải làm sao đây?
- Nếu chỉ backup 1 lần cho 1 commit thì cực quá vì pull nhiều branch thì sao?
- Mình đang làm branch hiện tại chưa muốn commit, mà phải qua branch khác fix bug dùm member vậy thì phải làm sao?
Nhìn chung mọi câu hỏi đều xoay quanh việc bạn muốn backup code mà chưa thể commit được! Có 1 câu thần chú mà mình hay dùng đó là git stash nó cho phép bạn backup mọi lúc, không giới hạn số lần backtup và bạn dễ dàng tra cứu lại những gì bạn backup nữa.
Bạn muôn biết rõ sự khác biệt này thì vào xem bài viết này -> Tổng hợp sử dụng git stash hiệu quả