2014-07-01 15 views
14

Có cách nào để sử dụng "chế độ xem so sánh" của GitHub để xem sự khác biệt giữa các phiên bản hiện tại của hai chi nhánh không? (Tức là, để xem cùng một sự khác biệt mà bạn sẽ nhận được nếu bạn đã làm git diff <a-branch> <another-branch>.)GitHub so sánh chế độ xem phiên bản hiện tại của các chi nhánh

Tôi đã tạo một ví dụ nhỏ here. Có hai nhánh: "master" và "other-branch". Nếu tôi làm git diff master..other-branch, đây là diff:

diff --git a/README.md b/README.md 
index 495cc9f..3d2c3a0 100644 
--- a/README.md 
+++ b/README.md 
@@ -1 +1,3 @@ 
Hello there! 
+ 
+This is a commit to the "other-branch" branch. 

Bạn có thể nhìn thấy từ đó diff rằng sự khác biệt giữa "chủ" chi nhánh và "khác ngành" chi nhánh là sự bổ sung của một dòng trống và một dòng của văn bản và không có xóa.

Tuy nhiên, nếu tôi cố gắng sử dụng GitHub so sánh view (https://github.com/akenney/compare-view-test/compare/other-branch hoặc https://github.com/akenney/compare-view-test/compare/master...other-branch), nó cho thấy diff này:

-This is a commit to the master branch. 
+Hello there! 
+ 
+This is a commit to the "other-branch" branch. 

Nó được so sánh "khác ngành" chi nhánh với một phiên bản cũ của "bậc thầy "chi nhánh, không phải với phiên bản hiện tại. Điều tương tự cũng xảy ra ngay cả khi tôi chỉ định các cam kết đặc biệt để so sánh (https://github.com/akenney/compare-view-test/compare/8ed0d53...e4470ec) - diff rằng nó thể hiện không phải là diff giữa hai cam kết.

Trả lời

10

GitHub chỉ hỗ trợ các dấu chấm ba đặc điểm kỹ thuật shortcut (...) phạm vi.

Từ git diff documentation:

git diff [--options] .. [-] [...]

này đồng nghĩa với hình thức trước đó. Nếu ở một bên được bỏ qua, nó sẽ có tác dụng tương tự như sử dụng ĐẦU thay thế.

diff git [--options] ... [-] [...]

Hình thức này là để xem những thay đổi trên nhánh chứa và cho đến thứ hai, bắt đầu từ một tổ tiên chung của cả hai. "git diff A ... B" tương đương với "git diff $ (git-merge-base A B) B". Bạn có thể bỏ qua bất kỳ một trong số đó, có cùng tác dụng như sử dụng HEAD thay thế.

+2

Được rồi ... do đó câu trả lời cho câu hỏi là không có. Oh well. Cảm ơn. Tôi không biết đó là ý nghĩa của ba chấm, và tôi không chắc tại sao GitHub sẽ không hỗ trợ loại khác biệt hai chấm bình thường. – Avril

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