Yeni bir özellik üzerinde çalışmaya başladım ve biraz kodladıktan sonra bu özelliğin kendi dalında olması gerektiğine karar verdim.
Mevcut işlenmemiş değişiklikleri yeni bir dala nasıl taşıyabilirim ve mevcut dalımı nasıl sıfırlayabilirim?
Yeni özellik üzerindeki mevcut çalışmayı korurken mevcut şubemi sıfırlamak istiyorum.
Aşağıdakileri kullanın:
git checkout -b <new-branch>
Bu, mevcut dalınızı olduğu gibi bırakacak, yeni bir dal oluşturacak ve kontrol edecek ve tüm değişikliklerinizi koruyacaktır. Daha sonra şu şekilde bir commit yapabilirsiniz:
git add <files>
ile yeni şubenize commit edin:
git commit -m "<Brief description of this commit>"
Çalışma dizinindeki değişiklikler ve dizinde sahnelenen değişiklikler henüz herhangi bir dala ait değildir. Bu, bu değişikliklerin nerede sonlanacağını değiştirir.
Orijinal dalınızı sıfırlamazsınız, olduğu gibi kalır. lt;old-branch>üzerindeki son işlem hala aynı olacaktır. Bu nedenle
checkout -b` yaparsınız ve ardından commit edersiniz.
Alternatif olarak:
Geçerli değişiklikleri geçici bir zulaya kaydedin:
$ git stash
Bu zulaya dayalı yeni bir şube oluşturun ve yeni şubeye geçin:
$ git stash branch <new-branch> stash@{0}
İpucu: zula adını yazmayı azaltmak için sekme tuşunu kullanın.
Eğer commit ederseniz, tek bir commit ID'sini de seçebilirsiniz. Bunu genellikle master'da çalışmaya başladığımda ve daha sonra origin/
git cherry-pick <commitID>
Burada]1 açıklandığı gibi cherry-pick ile yapabileceğiniz çok şey var, ancak bu sizin için bir kullanım durumu olabilir.