sách gpt4 ai đã đi

git-svn: thiết lập lại việc theo dõi của master

In lại Tác giả: IT Prince Thời gian cập nhật: 2023-10-29 01:04:15 26 4
mua khóa gpt4 Nike

Tôi đang sử dụng git-svn để làm việc với kho lưu trữ SVN. Bản sao làm việc của tôi được tạo ra bằng cách sử dụng git svn clone -s http://foo.bar/myproject Vì vậy, bản sao làm việc của tôi tuân theo sơ đồ thư mục mặc định của SVN (thân, thẻ, nhánh).

Gần đây tôi đã làm việc trên một nhánh sử dụng git-svn nhánh myremotebranch Tạo và sử dụng git checkout --track -b nhánh myremotebranch kiểm tra . Tôi cần làm việc ở nhiều địa điểm nên tôi thường chạy từ một chi nhánh git-svn cam kết Chỉnh sửa các tập tin vào kho lưu trữ SVN.

Sau khi hoàn tất các thay đổi, tôi chuyển lại về master và thực hiện hợp nhất, xác nhận hợp nhất và thử xác nhận hợp nhất thành công vào trunk từ xa.

Có vẻ như sau khi hợp nhất, việc theo dõi từ xa của nhánh chính đã chuyển sang nhánh tôi đang làm việc:

# git kiểm tra chủ
# git merge mybranch
... (thành công)
# git thêm .
# git commit -m '...'
# git svn cam kết
Cam kết với http://foo.bar/myproject/branches/myremotebranch ...
#

Có cách nào để cập nhật bản chính sao cho giống như trước khi hợp nhất không? điều khiển từ xa/cốp xe?

Tôi đang sử dụng git 1.7.0.5, nếu điều này có ích.

Nếu bạn cũng có thể giải thíchTại saoSẽ rất hữu ích nếu điều này xảy ra để tôi có thể tránh vấn đề này xảy ra lần nữa. Cảm ơn!

biên tập:

Đây là hiện tại của tôi .git/cấu hình:

[cốt lõi]
repositoryformatversion = 0
filemode = đúng
trần trụi = sai
logallrefupdates = đúng
autocrlf = sai
[svn-remote "svn"]
url = http://foo.bar/myproject
lấy = trunk:refs/remotes/trunk
nhánh = nhánh/*:refs/remotes/*
thẻ = thẻ/*:tham chiếu/điều khiển từ xa/thẻ/*
[nhánh "nhánh của tôi"]
từ xa = .
hợp nhất = refs/remotes/myremotebranch

Có vẻ như thân cây đang hướng về đúng nơi. Tuy nhiên, việc chuyển sang nhánh rồi quay lại nhánh chính cũng không có tác dụng; git svn cam kết Vẫn đang cố gắng đẩy tới myremotebranch.

1 Câu trả lời

Khi không có thay đổi nào trên trunk, git sẽ thực hiện lệnh merge nhanh và chỉ cần đặt nhánh "master" cục bộ thành commit trên nhánh của bạn. Git-svn không biết cách cam kết việc hợp nhất chuyển tiếp nhanh trở lại trunk, trên thực tế nó nghĩ rằng "master" hiện trỏ đến nhánh svn.

Để giải quyết vấn đề này, hãy sử dụng git merge --no-ff. Điều này sẽ buộc git tạo một commit hợp nhất, sau đó có thể commit vào svn.

Liên quan đến svn - git-svn: reset tracking of master, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/2835791/

26 4 0
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com