1. Khách Đăng sai mục 1 lần là banned nhé ! Không nhắc nhở không báo trước nhé !
    Dismiss Notice
  2. Diễn đàn SEO chất lượng, tuổi thọ cao: aiti.edu.vn | kenhsinhvien.edu.vn | vnmu.edu.vn | dhtn.edu.vn | sen.edu.vn
    Dismiss Notice

Git: Undo change in working directory and staging area

Thảo luận trong 'Linh Tinh' bắt đầu bởi thetvbytesoft, 9/11/19.

XenForohosting

Những nhà tài trợ diễn đàn:

>> khu du lịch tà đùng đăk nông
>> may88 sân chơi uy tín
>> win79 châu âu
>> Cấp thẻ an toàn lao động
>> tour du lịch tết nguyên đán giá rẻ
>> VN88AZ online
>> win79 game số 1
>> 188bet ăn tiền thật
>> 8888bong trực tuyến
>> sunwin sân chơi uy tín
>> b29 game online

  1. thetvbytesoft
    Offline

    thetvbytesoft admin

    (Nhà tài trợ: cty kiến trúc nhà số 1 tphcm) - Như đã giới thiệu cho bạn cách undo change (quay lui thay đổi) các commit ở local repo. Vậy trong bài viết lần này, chúng tôi xin giới thiệu cách undo change ở staging area và working directory

    [​IMG]

    1. Undo change in staging area

    Ở một số trường hợp, ghi chạy lệnh git add sẽ đẩy file từ working directory vào staging area để chuẩn bị commit, chúng ta nghĩ lại và nhận ra có một số file cần được sửa thêm trước khi commit, do đó cần phải gỡ nó ra khỏi staging area.

    Xem thêm: lập trình ứng dụng


    Ví dụ, vẫn với repo tôi dùng ở bài viết trước, tôi tạo 2 file style.css và script.js và add vào staging, sau đó kiểm tra trạng thái repo:

    Xem thêm: ngôn ngữ lập trình web


    Các bạn có thể thấy 2 file đều đã được thêm vào staging area

    Xem thêm: lập trình website


    Giờ tôi kiểm tra lại và thấy file script.js còn một số lỗi cần sửa, tôi muốn đưa nó ra khỏi vùng staging area để quay về working directory. Tôi chạy lệnh sau:

    sau đó kiểm tra trạng thái repo bằng git status:

    Các bạn có thể thấy file script.js đã được đưa ra khỏi staging area. Nếu chúng ta thực hiện lệnh git commit, sẽ chỉ có file style.css được commit vào local repo

    2. Undo change in working directory

    Nói một cách chính xác thì tôi sẽ undo change với những untracked files, tức là những file chưa được thêm vào staging area. Và với Git, undo untracked files đồng nghĩa với việc xoá sạch những file đó ra khỏi thư mục :v. Vì thế, hãy cân nhắc thật kĩ trước khi quyết định undo

    Hiện tại repo của tôi đang có 1 untracked file là script.js. Tuy nhiên thì để cho chắc ăn, tôi sẽ xem Git sẽ undo (xoá) những file nào trong thư mục đi bằng lệnh sau:

    Như vậy, khi undo (xoá) các untracked files ra khỏi thư mục, git sẽ xoá file script.js đi.

    Sau khi đã thực sự chắc chắn rằng cần phải xoá file script.js đi, tôi sẽ chạy lệnh sau:

    Như vậy, trong bài viết này tôi đã giới thiệu 2 lệnh để undo changes ở staging area và working directory:

    - git reset HEAD <đường-dẫn-file>: Đưa file từ staging area về working directory

    - git clean -f: Xoá các untracked files
     

Chia sẻ trang này