Sử dụng TFS, tôi có thân cây $/project/trunk
và một chi nhánh $/project/dev/feature/new_one
.Tìm đường dẫn tfs của chi nhánh đã hợp nhất
Tôi đã sáp nhập chi nhánh của tôi trở lại thân cây như sau:
C33($/project/trunk)
| \
| \
| C32($/project/dev/feature/new_one)
| |
| |
| |
...
tôi sử dụng API TFS và có thể tìm thấy C33 merge changeset. Với phương thức QueryMerges()
, tôi có thể tìm thấy phụ huynh thay đổi C32 với tất cả các thay đổi trên tệp, nhưng không phải là thông tin tôi cần: (
Có cách nào, sử dụng API TFS, để tìm kho lưu trữ đường dẫn của chi nhánh sáp nhập $/project/dev/feature/new_one
?
với changeset C32, tôi chỉ là có thể nhận được đường dẫn của tập tin sửa đổi, giống như $/project/dev/feature/new_one/path/to/file.txt
nhưng tôi không thể trích xuất đường dẫn của chi nhánh từ đường dẫn đầy đủ của tập tin :(
PS: Giải pháp hoạt động vì TFS2008 sẽ là tốt nhất, nhưng nếu nó chỉ hoạt động kể từ năm 2010, nó sẽ tốt ...
PS2: giải quyết vấn đề này sẽ giúp quản lý hợp nhất changesets trong git-TFS mà tôi phát triển ...
Giải pháp này là dự phòng của tôi nhưng không vui lòng vì 2 lý do: 1. nếu chi nhánh chính không phải là chi nhánh mà vẫn là thư mục trong tfs, bạn có thể lấy nó bằng QueryRootBranchObjects() và không thể tìm thấy nó 2. nếu bạn có nhiều chi nhánh tên dev, dev/test, dev/test2, dev/test3 và trong mã nguồn của bạn, bạn đã có một thư mục 'test' nó có thể thấy rằng nhánh cha tốt là 'dev' và trên thực tế nó là 'dev/test'. Bạn không thể chắc chắn 100%: (Ngay cả khi đó là trường hợp hiếm hoi ... – Philippe
Tôi đã thực hiện chỉnh sửa. 2. Đủ dễ để giải quyết, cộng với không thể có nhánh '$/dev' thì một nhánh khác bên dưới nó ở '$/dev/test', TFS không cho phép điều này ở bước phân nhánh. –