No Git, você pode remover um commit inteiro. De preferência, você só faz isso com confirmações que não são enviadas. Toda a parte “distribuída” do Git torna isso possível. Com o SVN, suas alterações estão imediatamente disponíveis para outras pessoas. Com o Git, eles estão disponíveis apenas quando são pressionados (“Sync” no Visual Studio).
Portanto, em vez de reverter o commit (o que significa que as mudanças errôneas permaneceriam no repositório e podem ter efeitos colaterais inesperados), do git reset --mixed HEAD~1
. Isso significa que seu diretório de trabalho permanecerá como está, mas o último commit será removido. Isso significa que o Git mostrará todos os arquivos modificados novamente.
A reversão no Git cria uma confirmação "inversa" do commit que você reverteu, desfazendo todas as alterações.
Em seguida, para confirmar apenas um único arquivo, primeiro verifique com git status
se o Git não possui alterações indesejadas. Em seguida, use git add path/to/file.txt
para preparar (somente) esse arquivo. Depois disso, basta executar git commit
, usar uma mensagem de confirmação apropriada e pronto.
Quando você executa git commit
e o editor de texto é exibido, o arquivo também contém uma lista de alterações que serão confirmadas. Inspecione cuidadosamente esta lista para certificar-se de que você apenas consente o que deseja.
Além disso, não use o Visual Studio para trabalhar ativamente com o Git. Ele tenta aplicar termos legados do TFS às operações do Git, mas eles não são os mesmos. Em vez disso, tente aprender o Git no console. O Visual Studio tem algumas boas vantagens para o trabalho somente leitura, como uma ótima visualização de diferenças.