Câu hỏi Làm thế nào để so sánh hai phiên bản trong Bitbucket?


Nhóm của tôi đang sử dụng Bitbucket cho kho lưu trữ git của chúng tôi và gần đây chúng tôi đã bắt đầu sử dụng chức năng yêu cầu kéo để xem xét mã. Nó hoạt động tốt trên đánh giá đầu tiên, nhưng nếu nó trải qua nhiều lần lặp lại (nghĩa là, các thay đổi được thực hiện và kéo yêu cầu được cập nhật), tôi muốn thấy một liên kết chỉ với những thay đổi mới được thực hiện từ lần xem xét mã cuối cùng.

Tôi nhìn vào chức năng "so sánh" nhưng giao diện người dùng trông giống như nó chỉ có thể so sánh giữa các nhánh. Có một cách đơn giản để có được một sự khác biệt giữa hai cam kết?


76
2018-01-29 16:42


gốc


Giới thiệu làm việc với các yêu cầu kéo hoặc là đánh giá mức cam kết một tính năng mới trong bitbuckt 4.8 - surfmuggle


Các câu trả lời:


Đây chỉ là một sửa đổi nhỏ cho các câu trả lời đã được đưa ra nhưng thêm #diff vào cuối thay vì #commits thường là những gì tôi đang tìm kiếm. Cũng như những người khác có thể đã đề cập đến kết quả tốt nhất cho tôi thường thu được bằng cách đặt cam kết mới hơn đầu tiên và thứ hai cũ hơn nhưng điều đó sẽ phụ thuộc vào nhu cầu cụ thể của bạn.

https://bitbucket.org/<OWNER>/<REPO>/branches/compare/<commit-hash>..<commit-hash-older>#diff

61
2017-08-03 20:11



Tôi muốn họ sẽ thêm một số gui trực quan để theo dõi sửa đổi cam kết (tương tự như gerrit) - dolbi
Tôi đã thử câu trả lời này ngày hôm nay mà không thành công. Bất cứ ai có thể xác minh rằng nó vẫn còn hợp lệ với phiên bản hiện tại của Bitbucket? - Martin Stålberg
Tôi chỉ thử điều này với hai cam kết từ dự án tortoisehg và nó vẫn xuất hiện để làm việc. Đây là một liên kết ví dụ: bitbucket.org/tortoisehg/thg/branches/compare/… - Night Owl
Làm việc tuyệt vời. Đã chèn owner/repo, sao chép các băm từ danh sách cam kết, nhấn enter và bam. Đẹp và dễ dàng xem diff. (Tại sao đây không phải là một điều rõ ràng trong GUI của họ tuy nhiên ...) - Svish
@NightOwl - Bạn có đang sử dụng máy chủ Stash / bitbucket không? Nếu vậy, điều này chỉ hoạt động trên bitbucket.org - jira.atlassian.com/browse/BSERV-2550 - Cinderhaze


Hãy thử một cái gì đó như:

https://bitbucket.org/<OWNER>/<PROJECT>/branches/compare/<commit1>..<commit2>#commits

Được lấy từ: https://bitbucket.org/site/master/issue/4779/ability-to-diff-between-any-two-commits


24
2017-09-01 02:26



Không hoạt động trong phiên bản 4.14. Cung cấp lỗi Liên kết chết khi bạn thêm bất kỳ thứ gì sau compare/ bao gồm cả ở trên. - Juha Untinen
Tương tự với cú pháp khác được đề cập trong bitbucket.org/site/master/issues/11657/… chỉ cung cấp 404 chung và đường dẫn bên dưới. - Juha Untinen


Bitbucket hỗ trợ so sánh các thẻ ngay bây giờ.

https://bitbucket.org/<OWNER>/<PROJECT>/branches/compare/<tag1>%0D<tag2>

16
2018-06-26 22:26



Điều này mang lại cho tôi một trang nhưng không làm khác biệt giữa TAGS, đó là những gì tôi đang tìm kiếm - tristanbailey
Đối với hậu thế, nó hoạt động, nhưng tag1 phải bắt đầu bằng "v" và mới hơn, tag2 cũ hơn. Ví dụ, bitbucket.org/codsen/array-includes-with-glob/branches/compare/… - cách khác xung quanh sẽ không hoạt động và không có "v" nó sẽ không hoạt động - cả hai trường hợp sẽ dẫn đến 404. - revelt


Tôi có Bitbucket Server, phiên bản: v4.4.1

Câu trả lời với tôi là thế này.

http://<path-to-my-server>/projects/<project-name>/repos/<repo-name>/commits/<old>?to=<new>

Tôi đã tìm kiếm câu trả lời này bởi vì trong dự án của tôi, chúng tôi sử dụng git submodules, và trong pull request tôi chỉ có thể thấy sha commit cũ và sha commit mới của mỗi submodule đã thay đổi. Không có liên kết nào để nhấp hoặc bất kỳ thứ gì (mà tôi biết) để chuyển sang chế độ xem khác này. Url này cho phép tôi xem những gì đã thay đổi trong submodules quá.

Btw, nếu ai đó biết cách tốt hơn để so sánh hai cam kết trong mô-đun con trong một yêu cầu kéo, vui lòng cho tôi biết.


7
2017-11-03 18:46



Tất cả điều này cho tôi, trên Bitbucket Server v4.9.0, hiển thị cam kết đầu tiên. Nó không so sánh các bản sửa đổi. - Jeff
@ Jeff đã làm bạn thử chuyển đổi <cũ> thành <new> tôi có thể đã trộn chúng lên, nếu có, sau đó tôi sẽ sửa câu trả lời của tôi - santiago arizti
Vâng, cùng một vấn đề. Trong thực tế, tính đến tháng 11 năm 2016 (tháng này), Atlassian đang nói rằng tính năng này chưa được hỗ trợ trong Bitbucket Server: jira.atlassian.com/plugins/servlet/mobile#issue/BSERV-2550. Bạn có chắc chắn nó đang làm những gì bạn nghĩ rằng đó là trên hệ thống của bạn? - Jeff
Tôi tìm thấy điều này để làm việc cho một sudo cho các thẻ, bằng cách lấy băm cam kết cho mỗi thẻ - tristanbailey


Định dạng xem so sánh Bitbucket như sau:

https://bitbucket.org/<owner>/<repo>/branches/compare/<new>%0D<old>

Đưa ra một ví dụ ged/ruby-pg (RubyGem, một thư viện ruby):

Để so sánh hai bản phát hành (từ v0.18.1 đến v0.18.2)

https://bitbucket.org/ged/ruby-pg/branches/compare/v0.18.2%0Dv0.18.1

Để so sánh hai bản sửa đổi (từ f97dd6c đến 22a3612)

https://bitbucket.org/ged/ruby-pg/branches/compare/22a361201fd1d387d59a066b179124694a446f38%0Df97dd6cb4f34da6a62c4339887249115c7c25b9c


5
2017-07-15 07:08





Các trường tìm kiếm trong danh sách chi nhánh / thẻ thả xuống trên trang So sánh trên bitbucket.org hiện hỗ trợ băm cam kết được dán.

Vì vậy, bây giờ bạn chỉ có thể đi đến https://bitbucket.org/<owner>/<repo>/branches/compare/ và dán băm vào danh sách thả xuống thay vì hack URL!

drop down, then paste in commit hash


3
2018-01-19 16:37





Điều gì làm việc cho tôi là      https://bitbucket.org/-theusername-/-projectnamealllowercase-/branches/compare/-Leftalphanumberic_commitcode-..-Rightalphanumeric_commit-#commits

Thay thế cái -username- với bạn username

Nhờ @Aguardientico


0
2017-12-31 10:44





Tạo một thẻ ánh sáng cho (các) commit bạn muốn so sánh. git -a [tên thẻ] [commit_sha]

Sau đó, trong Bitbucket, trong trình đơn so sánh (trình đơn để thực hiện yêu cầu kéo) chỉ cần so sánh với các thẻ.


0
2018-02-17 14:31