2011-12-05 27 views

Trả lời

60

Cung cấp đường dẫn (Myfolder trong trường hợp này) và chỉ cần chạy:

git diff myfolder/

+11

Tôi muốn sử dụng 'git diff - myfolder' để giảm thiểu sự mơ hồ cho git. Ký hiệu chung cho git diff (và nhiều lệnh git) là 'git diff [commit-ish] - [path]' trong đó commit-ish mặc định là HEAD (bây giờ bạn đang ở đây) và '[path]' mặc định là thư mục gốc git, nhưng có thể là bất kỳ thứ gì liên quan đến thư mục hiện tại của bạn. Không có '--', git sẽ đoán ý bạn là gì,' [commit-ish] 'hay' [path] '. Trong một số trường hợp, điều này khiến git nói rằng ký hiệu là 'mơ hồ'. Nếu tôi nhớ chính xác. – L0LN1NJ4

+2

Thao tác này sẽ không in được gì khi tôi thử phương thức trong câu trả lời và phương thức trong nhận xét. – ray

+0

@ray có nghĩa là bạn không có sự khác biệt giữa cây làm việc và cam kết mới nhất –

5

Bạn nên tạo một thói quen nhìn vào tài liệu hướng dẫn cho các công cụ như thế này. Nó rất hữu ích và sẽ cải thiện kỹ năng của bạn rất nhanh chóng. Dưới đây là các bit có liên quan khi bạn làm git help diff

git diff [options] [--no-index] [--] <path> <path> 

Hai <path> s là những gì bạn cần phải thay đổi các thư mục trong câu hỏi.

22

Nếu bạn so sánh các nhánh khác nhau, bạn cần sử dụng -- để tách bản sửa đổi git khỏi đường dẫn hệ thống tệp. Ví dụ, với hai chi nhánh địa phương, masterbryan-working:

$ git diff master -- AFolderOfCode/ bryan-working -- AFolderOfCode/ 

Hoặc từ một chi nhánh địa phương để từ xa:

$ git diff master -- AFolderOfCode/ origin/master -- AFolderOfCode/ 
+10

Chỉ cần một mệnh đề sau khi liệt kê cả hai nhánh, như trong: git diff branch1 branch2 - path/to/dir – emery

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