Encontrei muitos exemplos de como alterar o nome de usuário para revisões específicas e assim por diante.
Mas o que eu preciso é isso: fiz um checkout com as credenciais de autenticação de um colega de trabalho e preciso alterá-las para minhas credenciais para commits futuros.
Não posso simplesmente finalizar a compra com minhas credenciais devido às muitas mudanças que já foram feitas ...
Alguém familiarizado com isso?
authentication
svn
credentials
Axel Freudiger
fonte
fonte
Respostas:
Você pode alterar o usuário com
Subversion 1.6 e anterior:
Subversion 1.7 e posterior:
Para descobrir o que
protocol://currentUser@server/path
é, executeem sua cópia de trabalho.
fonte
A maneira mais fácil de fazer isso é simplesmente usar a opção --username em seu próximo checkout ou commit. Por exemplo:
svn commit --username newUser
ou
svn co --username newUser
Ele será armazenado em cache e usado como nome de usuário padrão para comandos futuros.
Veja também: No Subversion, posso ser um usuário diferente do meu nome de login?
fonte
svn info
não vejo nenhuma mudança naAuthor
linha.Eu tive exatamente o mesmo problema e encontrei a solução em Onde o cliente SVN armazena os dados de autenticação do usuário? :
cd
a~/.subversion/auth/
.fgrep -l <yourworkmatesusernameORtheserverurl> */*
.(Para Windows, as etapas são análogas; o
auth
diretório está em%APPDATA%\Subversion\
).Observe que isso só funcionará para esquemas de acesso SVN onde o nome do usuário faz parte do login do servidor, portanto não é útil para repositórios acessados usando
file://
.fonte
fgrep
comando deve ter um-l
, de modo que o comando informe o caminho do arquivo. Eu ia editar, mas não é longo o suficiente.O comando, que pode ser executado:
Funciona perfeitamente ;)
PS Só uma dica: a opção "--username" pode ser executada em qualquer comando "svn", não apenas na atualização.
fonte
Se o seu protocolo for http e você estiver usando o Subversion 1.7, você pode mudar o usuário a qualquer momento simplesmente usando a opção global --username em qualquer comando.
Quando o método de Ingo não funcionou para mim, foi o que descobri que funcionava.
fonte
Vá para
Tortoise SVN --> Settings --> Saved Data
.Há uma opção para limpar os dados de autenticação, clique no botão limpar e isso permitirá que você selecione para qual conexão deseja limpar o ID do usuário / pwd.
Depois que você fizer isso, qualquer checkout ou atividade de atualização será solicitado novamente para o ID do usuário e a senha.
fonte
para Win10 você deve remover esta pasta e fechar / abrir seu IDE
, também em meus projetos não há pastas ".subversion", apenas ".svn"
fonte
Além disso, para aqueles que perceberam tarde demais, que se comprometeram com as credenciais erradas, a solução (após o fato) é mudar o autor svn dessa revisão: veja esta questão
Basicamente, a sintaxe é:
fonte
Com base na solução de Ingo Kegel, criei um "pequeno" script bash para alterar o nome de usuário em todas as subpastas. Lembrar de:
<NEW_USERNAME>
para o novo nome de usuário.<OLD_USERNAME>
para o nome de usuário atual (se você não tiver um nome de usuário definido, simplesmente remova<OLD_USERNAME>@
).No código abaixo, o comando svn é apenas impresso (não executado). Para que o comando svn seja executado, simplesmente remova o
echo
espaço em branco e na frente dele (logo acimapopd
).Espero que seja útil!
fonte
Eu acredito que você poderia criar seu próprio branch (usando sua própria credencial) a partir do mesmo tronco que o branch de seu colega de trabalho, mesclar do branch de seu colega de trabalho para sua cópia de trabalho e então fundir de seu branch. Todos os commits futuros devem ser marcados como vindos de você.
fonte
Você pode pedir a seu colega para criar um patch, que reunirá todas as alterações feitas em um único arquivo que pode ser aplicado ao seu próprio check-out. Isso atualizará todos os seus arquivos de forma adequada e, em seguida, você poderá reverter as alterações e fazer o check-in das suas.
fonte