Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

michelmfreitas

controle de versão / git / svn

Recommended Posts

Olá pessoal, entrei em uma empresa que trabalha com GIT, eu trabalhava com SVN, e estou tendo algumas dificuldades para me adaptar ao GIT. Então gostaria de migrar para o SVN, já que a a equipe são apenas de dois programadores.

 

Temos o repositório GIT em um servidor linux.

Para linux, encontrei o Rabbitvcs, que inclusive tem suporte ao git.

 

Como faço essa migração, ou acham melhor eu permanecer com o GIT utilizando o Rabbitvcs? Podem me ajudar com essa e as dúvidas seguintes de configuração?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fique com o Git!! :lol:

 

O Git tem diversas vantagens. E por isso é um dos mais usados hoje.

Não é difícil usá-lo. É questão de se adaptar. Você está na área de TI. Terá de se adaptar a muitas coisas diferentes todo dia, todo mês, todo ano. Sempre haverá coisas novas e melhores

 

Veja este meu post sobre o Git: http://rberaldo.com.br/git-controlando-versao-de-seus-programas/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, não desista !! :)

 

tente dar uma olhada nisso aqui: www.ibm.com/developerworks/br/linux/library/l-git-subversion-1/

 

nos fale quais seus desafios aí que vamos ajudando. A minha dificuldade com o git é em resolver conflitos, pq to acostumado com o tortoise. @Beraldo, vc sabe se já tem o tortoise git e se ele funciona bem com conflitos?

 

michel, tente colcoar o seu projeto no github, mesmo q seja pagando para que o projeto fique invisivel, e use o github para windows, que é bem legal! https://windows.github.com/

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Beraldo, você sabe se já tem o tortoise git e se ele funciona bem com conflitos?

Só uso o Git pela linha de comando. Falam bem do SourceTree. Mas ainda prefiro a linha de comando. Sinto que tenho mais controle sobre o que está acontecendo. :thumbsup:

 

 

michel, tente colcoar o seu projeto no github, mesmo q seja pagando para que o projeto fique invisivel, e use o github para windows, que é bem legal! https://windows.github.com/

O BitBucket permite criar repositórios privados gratuitamente. É uma boa alternativa

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu pelas dicas pessoal. Mesmo que sejam apenas dois programadores apenas, e que essa equipe não irá aumentar de tamanho, recomendam o GIT? Ouvi falar que para projetos pequenos o SVN é melhor.

 

Eu utilizo o Linux, por agora. E o repositório fica em um servidor AWS. Mesmo assistindo vídeos e lendo tutoriais, fico com dúvida e receio de modificar algo e perder todo repositório.

Compartilhar este post


Link para o post
Compartilhar em outros sites

GIT é bom para tudo que é tamanho de equipe, até quando faço projetos pessoais uso ele ao invés de SVN, mesmo achando o SVN mais simples

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ouvi falar que para projetos pequenos o SVN é melhor.

Onde ouviu isso? E qual é a explicação?

 

 

Mesmo assistindo vídeos e lendo tutoriais, fico com dúvida e receio de modificar algo e perder todo repositório.

Se já conhece SVN, não há motivo para desespero. É só aprender os outros comandos. Em linhas gerais, é quase igual.

 

Mas se não quiser, continue com o SVN. Porém um dia vai precisar conhecer o Git.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Beraldo, li em algum tópico de fórum ou post, não me lembro onde.

 

Estou pegando o GIT aos poucos, prefiro aprender desde então já que a empresa utiliza.

 

 

Vamos lá, me tirem algumas dúvidas operacionais.

 

Criei uma pasta no meu pc, iniciei um repositorio com git init.

Criei um arquivo e commitei, normal.

Criei outro arquivo e apaguei.

Criei uma pasta.

 

Dúvidas:

- eu tenho um projeto pronto e já em andamento da empresa. Seria interessante eu criar um branch para continuar daqui pra frente? Pelo que entendi, Branch é uma ramificação do projeto, seguindo do seu ponto de criação adiante, assim se fizer algo errado não comprometo os arquivos desde o ponto da criação e posso voltar a este checkpoint. É isso?

 

- na pasta que criei, mesmo dando git add . ele não adicionou a pasta no commit. dei um git status e ela não apareceu lá. Por que?

Compartilhar este post


Link para o post
Compartilhar em outros sites

1. Sim, é isso sobre branchs. Mas importante notar que quando for "lançar" a feature que está desenvolvendo na branch, vc deve fazer um merge dela na master

 

2. O git ignora diretórios vazios.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Depende do objetivo.

 

branch é uma ramificação na linha do tempo de um mesmo repositório (mesmo remote)

fork é um outro repositório (assim também criará outra linha do tempo) (outro remote)

 

Quando você está trabalhando em um projeto colaborativo, em que você não tem acesso de escrita no repositório, você abre um fork, faz as suas modificações e envia um Pull Request para o repositório original. Para avaliarem as suas modificações e decidirem se integram ou não naquele repo em que você não tinha permissão de escrita (git push)

 

Quando você está trabalhando numa mesma base de código com outro desenvolvedor ou sozinho, eu creio que é mais tranquilo trabalhar com branchs para "features" que seriam bloqueantes e podem "quebrar a master" por algum período considerável de tempo.

 

Como boa prática, equipes bem organizadas adotam que nunca se deve commitar diretamente na master (apesar de algumas teorias de Integração Contínua constetarem isso, e acharem que é possível sim commitar sempre na master, mesmo que quebre o source base).

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas o diretório contém um arquivo. Há um comando para listar os arquivos do repositório/branch?

 

1. Sim, é isso sobre branchs. Mas importante notar que quando for "lançar" a feature que está desenvolvendo na branch, você deve fazer um merge dela na master

2. O git ignora diretórios vazios.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se o diretório tem um arquivo, então vc adiciona o arquivo ou todos os arquivos do diretório, e não apenas o diretório.

 

Apartir do momento em que você está em uma branch, todos os arquivos que vc está vendo são os arquivos apenas daquela branch.

 

Se estiver utilizando algo unix, liste com ls, ls -la.. e por ai vai... normal.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bruno, não entendi.

 

Listo arquivos no Linux com ls, ok. A pasta e seus arquivos estão lá, exibidas. Quando abro o gerenciador de arquivo do linux, ele me mostra a pasta do repositorio criado com simbolo verdinho de ok, e a pasta, dentro, com simbolo de exclamação vermelho. Então ela não foi enviada para o repositorio online, correto?

 

Mesmo dando um git commit -am "comentario" na raiz do projeto/repositorio, ele exibe: nothing to commit, directory clean.

 

A listagem a que me referi era do repositorio no servidor, tipo uma comparação com o que tenho em local e server.

 

COnsegui explicar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Manda uma screen (não sei qual símbolo de exclamação é esse, minhas preferências são diferentes das suas)

 

commit -am faz o append apenas dos arquivos já modificados, e não dos untrackeds (aqueles que ainda não entraram na árvore).

Adicione a primeira vez com:

 

git add .

 

 

Comparação do que vc tem com o que está no remoto, é o git status desde que esteja atualizado o seu local.

Para ver as linhas modificadas, faça um git diff

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mais uma dúvida pessoal:

 

fiz um commit errado. Ok. Preciso desfazer as alterações que joguei no servidor.

 

dei um GIT LOG e vi os ultimos commit. Quero voltar para um GIT especifico.

 

Como faço? Dei git checkout <id-commit> mas o site não voltou ao estágio anterior. =(

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.