Como obtenho minha solução no Visual Studio online novamente no TFS?

242

Eu tive minha solução no Visual Studio 2012 (que está sob controle de origem TFS) aberta e o servidor TFS (2010) estava inoperante. Quando fiz uma alteração em um dos arquivos e tentei salvá-lo, recebi uma solicitação para perguntar se queria sobrescrever o arquivo dizendo que o servidor TFS estava inoperante (não consigo lembrar as palavras exatas) e a seguinte mensagem apareceu em a janela Saída:

This solution is offline.  [Team Foundation Server: http://tfs1:8080/tfs/server]
The solution was offline during its previous session and will remain offline.

Como faço para que a alteração do arquivo seja reconhecida como estando entre as Alterações pendentes e toda a solução online novamente?

Appulus
fonte

Respostas:

504

Procurei a solução on-line e encontrei essa solução, mas não estava muito interessada na alteração do registro.

Encontrei uma maneira melhor: clique com o botão direito do mouse no nome da solução, na parte superior do Solution Explorer e selecione a opção Go Online . Clicar nesse botão permitiu selecionar os arquivos que foram alterados quando eu estava offline e tornar a solução online novamente.

Depois de encontrar a solução, encontrei o seguinte tópico do fórum msdn que confirmou o acima.

Appulus
fonte
1
Trabalhou para mim. Obrigado.
Bijimon
2
Trabalhou para mim, muito obrigado. Seria estranho entrar no registro para isso.
Nick N.
Eu realmente precisava disso hoje. Obrigado por fornecer uma resposta. Trabalhou muito bem.
Tony Abrams
2
Por que isso não aparece primeiro. Eu quase perdi essa resposta. :(
Adrian
4
Essa é a melhor resposta e também funciona no Visual Studio 2017. Não há necessidade de editar o registro.
Wayland Young
9

Renomeie o arquivo .SUO correspondente da solução. O arquivo SUO contém o status do TFS (online / offline), entre vários outros presentes.

Faça isso apenas se o "clique com o botão direito do mouse no nome da solução, na parte superior do Solution Explorer e selecione a opção Go Online", falhar (porque, por exemplo, você instalou a visualização do VS2015).

Wolfgang Grinfeld
fonte
8

Vá para File > Source Control > Go Online, selecione os arquivos que você alterou e termine o processo.

Hadagalberto Junior
fonte
6

(Etapa adicional da solução acima para se estiver faltando o valor de registro de AutoReconnect ou Offline)

Para Visual Studio 2015, versão 14

  1. Desativar todas as instâncias do VS
  2. HKEY_CURRENT_USER \ SOFTWARE \ Microsoft \ VisualStudio \ 14.0 \ TeamFoundation \ Instances {YourServerName} \ Collections {TheCollectionName} (Para chegar a esse diretório no Windows, pressione a tecla Windows + R e procure por "regedit")
  3. Defina os valores Offline e AutoReconnect como 0.
  4. Se estiver faltando um desses atributos (no meu caso, estava faltando o AutoReconnect), clique com o botão direito do mouse e crie um novo valor DWORD (32 bits) com o nome ausente desejado, AutoReconnect ou Offline.
  5. Novamente, verifique se os dois valores estão definidos como zero.
  6. Reinicie sua solução

Informações adicionais: blog MSDN - Quando e como minha solução fica offline?

Ariella
fonte
3

Estou usando a versão 15.4.0 do Visual Studio 2017 . Especialmente quando comecei a usar a opção de solução leve, essa coisa offline aconteceu comigo. Eu tentei acima soluções que são:

  1. Tentou regedit a opção, mas não consegue ver as opções de menu apropriadas. Não funcionou.
  2. Clique com o botão direito do mouse na solução, existe a opção ir on-line e quando eu escolho a mensagem que aparece : "A solução está offline porque o Team Foundation Server associado está offline. Não é possível determinar o espaço de trabalho para esta solução."

Em seguida, em Arquivo -> Controle de origem -> Avançado -> Alterar controle de origem . Eu vi meus arquivos. Eu os seleciono e depois escolho a opção de ligação. Isso funcionou para mim.

çetin çelik
fonte
2

Você pode usar o editor de registro.

  1. Desative todas as instâncias do VS.
  2. Abra o editor de registro e acesse: HKEY_CURRENT_USER \ Software \ Microsoft \ VisualStudio \ 11.0 \ TeamFoundation \ Instances
  3. Encontre um servidor adequado, por exemplo: team32system1
  4. Vá para Coleção e, em seguida, DefaultCollection: HKEY_CURRENT_USER \ Software \ Microsoft \ VisualStudio \ 11.0 \ TeamFoundation \ Instances \ team32system1 \ Collections \ DefaultCollection
  5. Defina a tecla Off-line como 0
  6. Solução aberta no VS. Depois, deve aparecer qual pergunta você gostaria de trazer a solução para o modo online.
user3683748
fonte
stackoverflow.com/questions/261525/… Prefiro a página a seguir que a solução;). Bom para religar todos os csproj
Nordes
1

Nenhuma das soluções acima funcionou para mim no Visual Studio Community 2017 v15.7.1. De alguma forma, não havia opção "Ficar Online" no menu de contexto. Tentei editar o registro conforme sugerido aqui, mas isso só me mostrou um erro de que não foi possível encontrar a ligação. O que funcionou para mim é religar a solução para o servidor no menu Change Source Control.

Vá para File->Source Control->Advanced->Change Source Controle verifique se a sua solução está vinculada ao seu controle de origem. Caso contrário (como o meu), clique no botão de ligação, ele pesquisará automaticamente o servidor TFS on-line e religará sua solução a ele.

Saad
fonte
0

eu encontrei outro caminho sem muito esforço.

Simplesmente clique com o botão direito do mouse na sua solução e clique em desfazer alterações pendentes.

Em seguida, o VS solicitará um arquivo alterado de forma aguda onde você deseja desfazer ou não um arquivo específico.

Nesse caso, você pode clicar em não para um arquivo em que as alterações reais ocorram, o resto está apenas desfazendo. Isso não perderá suas alterações reais

Jay Magwadiya
fonte
0

Você precisará executar duas etapas aqui para obter uma solução completa

Primeiro, clique na Solução que você abriu e, em seguida, clique em Arquivo-> Controle de Origem -> Fique Online. Em seguida, desmarque todos os arquivos que estão sendo mostrados como modificados enquanto você estava offline.

Não faça a versão Get Latest do Source Control Explorer. Isso resultará em uma caixa de diálogo mostrando potencialmente vários arquivos solicitando que você resolva conflitos. Em vez disso, faça isso

No gerenciador de controle de origem, clique com o botão direito do mouse na pasta da qual deseja obter as informações mais recentes e depois em Avançado - Obter versão específica. No menu suspenso para o tipo de versão, escolha Mais recente e escolha a primeira caixa de seleção Substituir arquivos graváveis ​​que não estão com check-out. Isso sincronizará automaticamente sua pasta com as mais recentes no servidor

Abhijit Vyas
fonte