Git: Cherry-Pick para cópia de trabalho sem confirmação

190

Tenho várias ramificações em que mantenho certos commits que quero aplicar à minha cópia de trabalho de vez em quando. Inicialmente, tentei escolher a cereja, mas não quero ter o commit no ramo de destino posteriormente.

Então eu fiz cherry-pick+reset HEAD~1 --soft

Existe algo mais simples, como escolher apenas uma cópia de trabalho?

schoetbi
fonte
4
Você tem o sinalizador '-n', que significa "sem confirmação". Veja aqui: git-scm.com/docs/git-cherry-pick
Igal S.
4
Para uma série de commitsgit cherry-pick HEAD..<AwesomeBranch> -n
schoetbi

Respostas:

336

Use o sinalizador '-n' com a seleção de cereja que é "sem confirmação"

Veja aqui: http://git-scm.com/docs/git-cherry-pick

git cherry-pick -n <HASH>
Igal S.
fonte
34
-ntraz o commit para a área faseada. Para desfilar, git reset HEADseria necessário.
Vishnu NK
5

Se você estiver usando o Terminal

git cherry-pick -n <HASH>

Se você estiver usando o Intellij Idea

Settings -> Version Control -> git
untick commit automatically on cherry-pick 
Ravinda lakshan
fonte
2

Eu estava recebendo erros que error: server/metadata/metadata-preui-prod.xml: No such file or directory

Então agora eu faço isso

git checkout SHA -- server/metadata && git reset -- server/met adata

Velho

git show SHA -- file1.txt file2.txt | git apply -

ou todos os arquivos do SHA

git show SHA | git apply -

Como o git-cherry-pick altera apenas alguns arquivos?

rofrol
fonte
1

Para usuários do IntelliJ

Configurações> Controle de versão> Git: desmarque Confirmar automaticamente na seleção de cereja

insira a descrição da imagem aqui

Trayan Momkov
fonte