Assinar automaticamente todas as confirmações com git [fechado]

8

Com o git 1.7.9, é possível assinar um commit com a -Sopção É possível configurá-lo como padrão git config --global?

Então, em vez de git commit -S -m 'Commit message', seria justo git commit -m 'Commit message'.

tamasd
fonte
2
É possível com o novo git com a commit.gpgsign=trueconfiguração.
Vi.

Respostas:

4

Para assinar automaticamente todas as confirmações futuras do git, você pode definir um alias global. Por exemplo, para criar um alias global chamado "c", você faria o seguinte:

$ git config --global alias.c 'commit -s'

(observe que a opção de confirmação para sair é minúscula "-s" e NÃO maiúscula "-S", conforme você digitou sua pergunta).

Depois de fazer isso, você pode começar a fazer suas confirmações usando o alias "c" recém-criado. Aqui está um exemplo de criação e confirmação de um arquivo chamado "test.txt" que será assinado pelo confirmador:

$ vim test.txt
[edit file]
$ git add test.txt
$ git c -m 'My commit message'

Você pode ver que o commit possui a linha "Assinada por:" se você executar o comando "git log" com a --pretty=fulleropção:

$ git log --pretty=fuller
ricmarques
fonte
3
-sadiciona um campo "desconectado por" ao commit. -Sna verdade, o PGP assina o commit, que foi adicionado no git 1.7.9. Além disso, isso não assina todas as confirmações, mas apenas aquelas que são feitas pelo usuário diretamente usando o git ccomando Em uma reformulação, quando novas confirmações são criadas, isso não será assinado (ou sinal PGP) nas confirmações, a menos que você faça uma reformulação interativa e confirme manualmente todas as alterações.
Patrick Niedzielski
Para mais informações sobre commits de assinatura, consulte aqui: phreaknerd.wordpress.com/2012/02/09/... por exemplo
Patrick Niedzielski