Confirma automaticamente um arquivo para git

2

Existe uma maneira de enviar um arquivo para o git facilmente se ele foi atualizado?

Eu quero pegar uma lista de arquivos em um diretório, escrevê-lo em um arquivo de texto e enviá-lo para o git se ele for alterado. Suponho que isso envolveria um script de shell que cria a lista e, em seguida, executa git add [file] then git commit -m "Updating" , mas quero ter certeza de que ele não será quebrado se eu o executar em um script cron.

Obrigado!

    
por Jess 15.11.2012 / 11:00

2 respostas

3

Você pode simplesmente adicionar todos os arquivos que foram atualizados com

git add -u <filepattern>

Veja o manual:

Only match <filepattern> against already tracked files in the index rather than the working tree. That means that it will never stage new files, but that it will stage modified new contents of tracked files and that it will remove files from the index if the corresponding files in the working tree have been removed.

If no <filepattern> is given, default to "."; in other words, update all tracked files in the current directory and its subdirectories.

Isso tem o benefício de adicionar apenas arquivos que foram realmente alterados e não adicionar arquivos que ainda não estejam indexados.

Então, é só uma questão de cometer essas mudanças como você propôs.

    
por 15.11.2012 / 11:07
1

Esta solução se aplica se o problema é sempre adicionar este arquivo único, mesmo se você quiser adicionar manualmente outros arquivos:

Existem ganchos. Você poderia, por exemplo, criar um shellscript no diretório .git/hooks e nomeá-lo como pre-commit (não se esqueça de torná-lo executável). Nesse arquivo, você poderia adicionar algo como git add -u $GIT_WORK_TREE/filename . Isso sempre adicionará esse arquivo automaticamente ao confirmar as alterações.

A parte $GIT_WORK_TREE refere-se ao local onde você armazena seus arquivos.

    
por 15.11.2012 / 11:10

Tags