Şubede olduğumda bir branşman TEST'inde nasıl taahhüt edilmeyen değişiklikler koyabilirsiniz master
?
Şubede olduğumda bir branşman TEST'inde nasıl taahhüt edilmeyen değişiklikler koyabilirsiniz master
?
Yanıtlar:
Sadece test şubesine ödeme yapabilir ve ardından taahhütte bulunabilirsiniz. Başka bir şubeye taşınırken değişmeden yaptığınız değişiklikleri kaybetmezsiniz.
Ana dalda olduğunuzu varsayalım:
git checkout test
git add .
git add deletedFile1
git add deletedFile2
...
git commit -m "My Custom Message"
Silinen dosyalar hakkında gerçekten emin değilim, ancak kullandığınızda bunların dahil olmadığını düşünüyorum git add .
Ayrıca, yeni bir şube oluşturabilir ve şu yolla geçiş yapabilirsiniz:
git checkout -b new_branch
git add .
Bunu her zaman kullanıyorum çünkü kodu düzenlemeye başlamadan önce her zaman yeni bir dal başlatmayı unutuyorum.
Neden git stash kullanmıyorsunuz? Sanırım kopyala ve yapıştır gibi daha sezgisel.
$ git branch
develop
* master
feature1
TEST
$
Geçerli dalınızda taşımak istediğiniz bazı dosyalar var.
$ git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: awesome.py
#
# Changed but not updated:
# (use "git add <file>..." to update what will be committed)
#
# modified: linez.py
#
$
$ git stash
Saved working directory and index state \
"WIP on master: 934beef added the index file"
HEAD is now at 934beef added the index file
(To restore them type "git stash apply")
$
$ git status
# On branch master
nothing to commit (working directory clean)
$
$
$ git stash list
stash@{0}: WIP on master: 934beef ...great changes
$
Diğer şubeye gitme.
$ git checkout TEST
Ve başvur
$ git stash apply
# On branch master
# Changed but not updated:
# (use "git add <file>..." to update what will be committed)
#
# modified: awesome.py
# modified: linez.py
#
Ayrıca , çalışma dizininizde hala değişiklikler yaparken bir özellik dalını ne zaman bitirmek istediğinizi şikayet git stash
ettiğim için kullanıyorum .git flow
@Mike Bethany gibi, bu her zaman başıma geliyor çünkü hala başka bir dalda olduğumu unuturken yeni bir sorun üzerinde çalışıyorum. Yapabilecekleriniz Yani saklamak , işinizi git flow feature finish...
ve git stash apply
yeniye git flow feature start ...
şube.
git stash
taahhüt edilmemiş değişikliklerle başa çıkmak için tercih ettiğim yol. Kes ve yapıştır olarak düşündüğünüzde kesinlikle sezgisel bir yöntemdir.
git stash --include-untracked