2012-06-22 35 views
33

Tôi đang sử dụng git cùng với luồng git. Ở đây luồng git có chi nhánh develop. Bất cứ khi nào tôi cần bắt đầu tính năng, tôi nhậpDòng Git có xóa chi nhánh trên máy chủ từ xa không?

git flow feature start new 

một chi nhánh mới feature/new được tạo. Sau đó, tôi làm những thay đổi và cam chúng bằng cách sử

git push origin feature/new 

Sau comitting những thay đổi tôi hoàn thành tính năng sử dụng

git flow feature finish new 

xóafeature/new chi nhánh tại địa phương. Bây giờ tôi chuyển sang phát triển chi nhánh của git chảy và tôi một lần nữa gõ

git push origin develop 

mà thay đổi máy chủ từ xa develop chi nhánh

Nếu tôi gõ git branch -a, các chi nhánh mới đã bị xóa từ các địa phương nhưng nó có trên máy chủ có tên remotes/origin/feature/new

Có luồng git xóa các nhánh trên máy chủ từ xa bị xóa tại máy cục bộ của tôi không?

Vui lòng cho tôi biết nếu tôi mắc lỗi.

Trả lời

29

Nhìn vào source có vẻ như chi nhánh tính năng từ xa sẽ chỉ bị xóa nếu bạn gọi git flow feature finish với -F.

Tuy nhiên, điều này sẽ tìm nạp từ xa trước khi hoàn thành tính năng. Từ docs:

-F lấy từ $ ORIGIN trước khi thực hiện kết thúc

Nếu không, bạn có thể delete the remote branch bằng tay với:

git push origin :feature/new 
14

Tôi có thể đề nghị sử dụng các AVH git-dòng chảy Phiên bản.

Giống như Stefan cho biết, phiên bản gốc chỉ xóa chi nhánh từ xa khi bạn sử dụng -F, điều này thật lạ lùng. Phiên bản AVH khắc phục hành vi kỳ quặc này, nó sẽ luôn xóa chi nhánh địa phương và từ xa khi kết thúc, trừ khi bạn chỉ định hoặc

  • --keep, giữ địa phương và điều khiển từ xa.
  • --keeplocal, giữ địa phương nhưng xóa điều khiển từ xa.
  • --keepremote, giữ từ xa nhưng xóa địa phương.

Bạn có thể tìm thấy phiên bản AVH git chảy trên github.

+0

Phiên bản AVH có xử lý '' 'tính năng kéo''' tốt hơn không? Tôi chỉ cần đặt một tiền thưởng, vì '' 'tính năng kéo''' trong luồng git ban đầu rất khó hiểu (http://stackoverflow.com/questions/18412750/why-doesnt-git-flow-feature-pull-track), đánh giá cao bất kỳ đầu vào để có một câu trả lời bằng khẩu pháo. – dashesy

+0

Lệnh kéo tính năng sẽ không được dùng nữa cho mỗi phiên bản 2.0 và chỉ tính năng theo dõi sẽ khả dụng. –

+0

Có cách nào để tự động gắn thẻ vị trí của đối tượng địa lý HEAD trước khi loại bỏ nó không? Tôi thích nhìn thấy các thẻ xanh nhỏ trong git-web, nhưng khi điều khiển từ xa bị xóa, các thẻ đó biến mất. – avatarofhope2

2

Những gì tôi đã phải làm:

git flow feature delete -f name_feature 

Các -f là cần thiết nếu có sự thay đổi bên trong chi nhánh tính năng.

git push origin --delete feature/name_feature 

Tức là xóa nhánh từ xa.

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