Ao editar o código-fonte usando o gvim (v.7.4.488), quero confirmar algumas alterações no vcs (estou usando o git 2.1.4 na linha de comando no Ubuntu linux).
git --status
mostra quais arquivos eu alterei. No entanto, ele também mostra o vim .*.swp
do (s) buffer (s) atualmente visível (s), se o arquivo contiver alterações não salvas e quando o arquivo editado for igual ao arquivo .*.swp
-file. Obviamente, o git pode ignorar esses arquivos ou o vim pode armazenar os arquivos de troca em um local diferente (consulte vim.wikia ou esta pergunta no stackoverflow ). Mas eu gosto que os .*.swp
arquivos - apareçam git --status
quando contêm alterações não salvas, pois isso indica que estou enviando arquivos em um estado diferente daquele em que eles estão.
Como posso evitar que os falsos positivos de .*.swp
-files apareçam git --status
quando o arquivo salvo é o mesmo que .*.swp
-file, enquanto posso ver que o arquivo a ser confirmado está em um estado diferente daquele que estou editando com o vim?
- É possível ter apenas
.*.swp
-files quando o arquivo no disco e o arquivo no vim são diferentes? - Existe outra maneira de detectar arquivos não salvos?
Combinar os comentários de @elyashiv e @VanLaser resulta em um método mais simples do que detectar se os arquivos de troca implicam arquivos não salvos:
- não deixe o git ignorar os arquivos. *. sw [po];
- ao confirmar, se
git --status
revela algum.*.sw[po]
arquivo -fazer a:wa
no vi; e, - adicionar e confirmar.
git commit
...
:wa
para garantir que não haja arquivos não salvos.