• git版本管理工具学习(一)


    集中式 vs 分布式管理工具

    • 集中式(svn,cvs):版本库是集中存放在中央服务器的,工作时要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。缺点:必须联网才能工作,要求带宽。
    • 分布式(git):分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样,你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上。

    基本操作

    • 创建版本库:创建文件夹,cd到文件夹内,git init
    • 添加文件:git add <file_name>
    • 提交到版本库:git commit -m "<commont>"  注意:可以多次add后一次commit
    • 查看但前状态:git status
    • 查看修改内容:git diff

    版本回退

    • 查看提交的历史版本:git log (--pretty=oneline,简化查看信息)
    • 查看历史命令:git reflog
    • 退回到上一个版本:git reset --hard HEAD^/版本号 (HEAD为指向当前版本的指针,HEAD^为上一个,HEAD^^……,版本回退只是更改了HEAD指针的位置)

    工作区 vs 版本库

    • 工作区(除.git文件夹外的部分)
    • 版本库(.git文件):暂存区(stage)+分支(master默认)+HEAD指针

      

    • git add把文件添加进去,实际上就是把文件修改添加到暂存区
    • git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支
    • 每次修改,如果不add到暂存区,那就不会加入到commit

    管理修改

    • git管理的是修改,而不是文件
    • 删除文件撤销修改
      • rm <file_name> + git rm <file_name>
      • 恢复删除:git checkout -- <file_name>
      • 取消工作区的修改,用版本库现存代替工作区的修改让,即这个文件回到最近一次git commitgit add时的状态:git checkout -- <file_name>
      • 暂存区修改退回到工作区:git reset HEAD <file_name>

     

  • 相关阅读:
    acm寒假特辑1月20日 CodeForces
    acm寒假特辑1月24日 HDU
    acm寒假特辑1月25日HDU
    acm寒假特辑1月26日HDU
    acm寒假特辑1月22日HDU
    acm寒假特辑1月28日HDU
    ubuntu14.04安装notepadqq
    ntpd vs. ntpdate
    centos7 防火墙firewalld
    git 自动补全 (git auto completion)
  • 原文地址:https://www.cnblogs.com/HectorHou/p/5973594.html
Copyright © 2020-2023  润新知