2015-07-23 19 views
6

Hy,Sự khác biệt giữa các tập tin stash so với stage trong GIT

Khi cần lưu các thay đổi của mình từ một chi nhánh, đôi khi nói: . Nhưng tôi đã được khuyến khích sử dụng tùy chọn stash để:

1.Phân đoạn tệp không đủ để lưu tệp của tôi trước khi đăng xuất khỏi chi nhánh khác?

  1. Sự khác biệt giữa tệp giai đoạn và tệp stash là gì?

Cảm ơn

+0

trùng lặp có thể xảy ra [chênh lệch giữa chỉ số là gì, cache, và dàn dựng trong git?] (http: // stackoverflow.com/questions/3516823/whats-the-difference-between-the-index-cached-and-staged-in-git) –

Trả lời

13

1. Hơn "tiết kiệm" các tập tin của bạn, là hành động như Git mong đợi để theo dòng chảy của họ. (Lời khuyên, Git biết :))

2.- Stash sẽ chuyển các tệp đã sửa đổi của bạn thành một chồng. Vì vậy, sau này trong cùng hoặc trong một chi nhánh khác, bạn sẽ có thể đưa họ trở lại và xem những sửa đổi đó trong dự án của bạn.

Giai đoạn là bước trước để thực hiện cam kết, bạn thêm các tệp đã sửa đổi vào "Tệp được lưu trữ" để tạo cam kết tiếp theo của mình.


Bây giờ, bạn stash tập tin của bạn với

$git stash 

và bạn thêm các tập tin (sân khấu) với

$git add 


Bây giờ, tại sao stash tốt hơn những thay đổi của bạn hơn dàn dựng cho họ? Có lẽ phần này của tài liệu có thể giải quyết những nghi ngờ của bạn: Từ tài liệu:

stashing:

Thông thường, khi bạn đã làm việc trên một phần của dự án của bạn, mọi thứ đang trong tình trạng lộn xộn và bạn muốn chuyển nhánh thành một chút để hoạt động trên thứ khác. Vấn đề là, bạn không muốn thực hiện cam kết của công việc đã hoàn thành chỉ để bạn có thể quay lại điểm này sau. Câu trả lời cho vấn đề này là lệnh git stash.

Xem các liên kết dưới đây:

+0

Tôi đọc rằng tôi cần phải giai đoạn các tập tin đầu tiên bởi vì các tập tin khác theses sẽ được bỏ qua để stash chúng – user3254515

+0

Nếu bạn stash các tập tin của bạn, bạn nên "unstash" để phục hồi chúng. Bây giờ, nếu đó là những tập tin mới, có, bạn nên giai đoạn đầu tiên. – mayo

+0

Tôi không hiểu lý do tại sao tôi cần đầu tiên để giai đoạn các tập tin mới để stash chúng sau này. không phải là mục đích của các tệp stash để "lưu" các thay đổi chưa hoàn thành, được thử nghiệm .. Tại sao cần phải sắp xếp chúng như thể tôi đã cam kết chúng sau này? – user3254515

Các vấn đề liên quan