Rất cảm ơn bạn đã chia sẻ video... Quay lại các commit trước đây.. Video hay lắm, hấp dẫn quá bạn ơi... Mình đã xem kỹ... Thung Hoàng yêu mến video này quá... Chúc bạn luôn vui vẻ có nhiều niềm vui.... Hẹn gặp lại bạn trong video tiếp theo bạn nhé..
Em đóng góp xíu ạ. Em nghĩ nên có thêm 1 video nói về Detach HEAD để cho các bạn tránh checkout về commit trong quá khứ và commit ở đó có thể dẫn đến mất code. Nếu được như vậy thì series này sẽ hoàn hảo hơn ạ
Mình thấy là revert commit A tức là HEAD là commit mới trong đó các chỉnh sửa trong commit A ko còn nữa. Tuy nhiên Commit A vẫn còn đó chứ ko bị xóa đi trên dòng thời gian , có thể quay lại đc với lênh checkout . Ví dụ Commit A mình tạo file F1, Commit B tạo file F2 ,C tạo file F3, D tạo FIle F4. Như Vậy ở commit D ta có 4 file F1F2F3F4, khi revert B thì t có 1 commit mới với các FILE là F1F3F4 (ko có F2 của commit B)
Như vậy git revert HEAD sẽ giống với việc ta quay lại commit trước đó vậy , vì thay đổi trong commit mới nhất sẽ bị loại bỏ. Tuy nhiên về bản chất nó là 1 commit mới giống với commit trước đó chứ ko fai ta quay lại commit trước đó và thao tác. Ko biết đúng ko , mn cho ý kiến ạ
Em nghĩ anh git reset A không được là do bị conflict, các commit sau A đang là sửa text, revert A thì nghĩa là quay về lúc không có file luôn. Em đã test thử trên visual studio code (nó có các extension hỗ trợ cho git trực quan), em revert về A => nó báo sửa conflict => em xóa luôn xóa file sau đó chạy lệnh "git revert --continue" để tiếp tục và thành công revert.
sau khi học 2 phần reset và revert thì em thấy reset hard khi thay đổi ở local và muốn push lên CentralRepo thì ko được, bắt buộc phải git pull về, có nghĩa là ko cho phép thay đổi commit, còn revert thì khác, nó cho phép local thay đổi và đẩy lên Repo mà ko cần pull lại như reset, ko biết em thấy thế có đúng ko anh nhỉ ^^
Rất cảm ơn bạn đã chia sẻ video... Quay lại các commit trước đây.. Video hay lắm, hấp dẫn quá bạn ơi... Mình đã xem kỹ... Thung Hoàng yêu mến video này quá... Chúc bạn luôn vui vẻ có nhiều niềm vui.... Hẹn gặp lại bạn trong video tiếp theo bạn nhé..
thanks video much
Em đóng góp xíu ạ. Em nghĩ nên có thêm 1 video nói về Detach HEAD để cho các bạn tránh checkout về commit trong quá khứ và commit ở đó có thể dẫn đến mất code. Nếu được như vậy thì series này sẽ hoàn hảo hơn ạ
e check lại kĩ r a ơi, git reset --hard chỉ làm mất dữ liệu r, chứ lịch sử commit vẫn còn
bạn check kiểu gì đấy, tui check thì nó không còn :)
@@nvlmf9597 Nó không hiện bởi vì ở dưới đó không còn branch nào nữa. Nếu bạn checkout lại vào id của commit đó thì nó vẫn nguyên vẹn.
Cho em hỏi là ở phút 15:46 tại sao lại phải xóa hết nội dung file vậy ạ.
Mình thấy là revert commit A tức là HEAD là commit mới trong đó các chỉnh sửa trong commit A ko còn nữa. Tuy nhiên Commit A vẫn còn đó chứ ko bị xóa đi trên dòng thời gian , có thể quay lại đc với lênh checkout . Ví dụ Commit A mình tạo file F1, Commit B tạo file F2 ,C tạo file F3, D tạo FIle F4. Như Vậy ở commit D ta có 4 file F1F2F3F4, khi revert B thì t có 1 commit mới với các FILE là F1F3F4 (ko có F2 của commit B)
Như vậy git revert HEAD sẽ giống với việc ta quay lại commit trước đó vậy , vì thay đổi trong commit mới nhất sẽ bị loại bỏ. Tuy nhiên về bản chất nó là 1 commit mới giống với commit trước đó chứ ko fai ta quay lại commit trước đó và thao tác. Ko biết đúng ko , mn cho ý kiến ạ
@@minhtrungle1213 h a nghĩ sao ạ?
Em nghĩ anh git reset A không được là do bị conflict, các commit sau A đang là sửa text, revert A thì nghĩa là quay về lúc không có file luôn. Em đã test thử trên visual studio code (nó có các extension hỗ trợ cho git trực quan), em revert về A => nó báo sửa conflict => em xóa luôn xóa file sau đó chạy lệnh "git revert --continue" để tiếp tục và thành công revert.
mình cũng thử revert A sau đó xóa file của commit A sau đó --continue thì revert thành công
Này chúng ta nên xem với mục địch tham khảo thôi, chứ còn có chuẩn hay không thì phải test đi test lại và search nhiều nguồn. Nhưng rất cảm ơn anh!
sau khi học 2 phần reset và revert thì em thấy reset hard khi thay đổi ở local và muốn push lên CentralRepo thì ko được, bắt buộc phải git pull về, có nghĩa là ko cho phép thay đổi commit, còn revert thì khác, nó cho phép local thay đổi và đẩy lên Repo mà ko cần pull lại như reset, ko biết em thấy thế có đúng ko anh nhỉ ^^
như vậy là khi cái gì đã commit lên Repo thì ko sửa được hả anh, chỉ trừ khi tạo bản sao trước đó rồi commit ghi đè lên thôi ạ
Bạn dùng lệnh reset hard thì nó đã xóa commit và xóa hết dữ liệu của file thì làm gì còn để push được
git push -f origin master để ép push lên centralRepo sau khi reset - -hard bạn nhé
cho em hỏi thế tại sao không dùng git checkout commit để quay lại mà phải dùng revert ạ
2 cái đó khác nhau nhé b
@@34tranbatung34 khác như nào ạ?