Compartilhamento de tecnologia

Tutorial do Git

2024-07-08

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Ferramenta de controle de versão distribuída Git

​ Git é um sistema de controle de versão distribuído de código aberto que pode lidar com o gerenciamento de versões de projetos de projetos muito pequenos a muito grandes de forma eficiente e em alta velocidade.

Git é distribuído. Git não precisa de um servidor central. Cada um de nossos computadores possui as mesmas coisas. Usamos Git e temos um servidor central apenas para facilitar a troca das modificações de todos, mas o status desse servidor é o mesmo de cada um dos nossos PCs. Podemos usar este servidor como um PC de desenvolvedor, apenas para que todos possam se comunicar facilmente entre si sem desligar o computador. Todos ainda podem trabalhar sem este servidor, mas as modificações de "troca" são inconvenientes.
Insira a descrição da imagem aqui

abordagem do controlador de versão

Ferramenta centralizada de controle de versão

​Ferramenta de controle de versão centralizada, a biblioteca de versões é armazenada em um servidor central. Todos na equipe baixam o código do servidor central para trabalhar, eles devem estar conectados à Internet, seja uma rede local ou a Internet. Envie modificações pessoais para o repositório central. Tais como: SVN, CVS
Insira a descrição da imagem aqui

Ferramenta de controle de versão distribuída

​ Não existe um "servidor central" no sistema de controle de versão distribuído. O computador de todos possui uma biblioteca de versões completa. Ao trabalhar assim, não há necessidade de conexão à Internet, pois a biblioteca de versões está no seu próprio computador. Quando várias pessoas colaboram, elas só precisam enviar suas modificações umas para as outras e então poderão ver as modificações umas das outras. Tais como: Git

Comandos comuns

Fluxo de trabalho Git
Insira a descrição da imagem aqui

  • clone: Clonar código do repositório remoto para o repositório local

  • Confira: Confira uma filial do armazém do armazém local e faça modificações

  • adicionar: Envie o código para a área de teste antes de enviá-lo

  • comprometer-se: Envie para o armazém local e salve as versões históricas modificadas no armazém local

  • buscar: busca da biblioteca remota para o warehouse local sem qualquer ação de mesclagem.

  • puxar: Extraia da biblioteca remota para a biblioteca local e mescle automaticamente (mesclar) e, em seguida, coloque-o no espaço de trabalho, o que equivale afetch merge

  • empurrar: Envie o código para o armazém remoto

  • git config:Informações de configuração

    # 设置用户信息
    git config --global user.name "userName"
    git config --global user.email "Email"
    
    # 查看配置信息
    git config --global user.name
    git config --global user.email
    
  • alias: Alias ​​do comando de configuração, em~/.bashrcAdicione a configuração e precise executá-la após a conclusão da modificação.source ~/.bashrc

    # 部分windows系统不允许用户创建.开头的文件,可以在gitBash中执行
    touch ~/.bashrc
    
    # 在~/.bashrc中添加内容,输出git提交日志
    alias git-log='git log --pretty=oneline --all --graph --abbrev-commit'
    
  • git init: Inicialize o diretório atual como um armazém git. Após a execução bem-sucedida, haverá vários..gitpasta

  • git status: Visualize o status da modificação (Área de armazenamento temporário, área de trabalho)
    Insira a descrição da imagem aqui

  • git add: Adicione modificações a um ou mais arquivos na área de trabalho para a área de teste

    git add 单个文件名 | 通配符
    
    # 将所有修改加入到暂存区
    git add .
    
  • git commit: Envie o conteúdo da área de preparação para a filial atual do armazém local,git commit -m '注释内容'

  • git log: visualize logs de envio e configure aliasesgit-log

    git log [option]
    	--all 显式所有分支
    	--pretty=oneline 将提交信息显示为一行
    	--abbrev-commit 使得输出的commitId更简短
    	--graph 以图的形式显示
    
  • git reset:Reversão de versão

    # 查看已经删除的记录,可以看到已经删除的提交记录
    git reflog
    
    # 版本切换,commitId可以通过git log查看
    git reset --hard commitId
    
  • git branch: Visualizar ramificações locais O uso de ramificações significa que o trabalho pode ser separado da linha principal de desenvolvimento para corrigir bugs e desenvolver novos recursos, de modo a não afetar a linha principal.

    • mestre(Produção) Filial: filial online, filial principal, filial correspondente a projetos de pequeno e médio porte como aplicativos rodando online

    • desenvolver(desenvolver) branch: É um branch criado a partir do master. Geralmente é usado como o branch de desenvolvimento principal da parte de desenvolvimento. Se não houver outros requisitos de desenvolvimento paralelo para diferentes fases de desenvolvimento online, o desenvolvimento pode ser realizado nesta versão. a fase de desenvolvimento está concluída, ela precisa ser mesclada no branch master e preparada para ficar online.

    • feature/xxx branch: Um branch criado a partir do desenvolvimento Geralmente é desenvolvido em paralelo ao mesmo tempo, mas é criado quando o lançamento não ocorre no mesmo período. Após a conclusão das tarefas de pesquisa no branch, ele é mesclado no branch. desenvolver ramo.

    • branch hotfix/xxx: um branch derivado do master, geralmente usado para reparo de bugs online. Após a conclusão do reparo, ele precisa ser mesclado nos branchs master, test e development.

    • teste(teste) filial

    • pré(Prélançamento) filial
      Insira a descrição da imagem aqui

    # 查看本地分支
    git branch
    
    # 创建本地分支
    git branch 分支名
    
    # 切换分支
    git checkout 分支名
    
    # 切换到一个不存在的分支,创建并切换
    git checkout -b 分支名
    
    # 合并分支,一个分支上的提交可以合并到另一个分支
    git merge 分支名
    
    # 删除分支,不能删除当前分支,只能删除其它分支
    # 删除时需要做各种检查
    git branch -d 分支名
    # 强制删除,不做任何检查
    git branch -D 分支名
    
  • Resolução de conflitos: Quando modificações em arquivos em duas ramificações podem entrar em conflito, por exemplo, a mesma linha do mesmo arquivo é modificada ao mesmo tempo, o conflito precisa ser resolvido manualmente.

    1. Lidar com conflitos em arquivos
    2. Adicione os arquivos resolvidos por conflito à área de armazenamento temporário (adicionar)
    3. Enviar para o armazém (comprometer-se)

Armazém remoto

  • git remote add: Adicionar um armazém remoto Esta operação consiste em inicializar a biblioteca local primeiro e depois conectá-la à biblioteca remota criada.

    git remote add