zoukankan      html  css  js  c++  java
  • Git分布式版本管理工具基本使用方法

    一、Git简介

    早先linux内核代码托管在BitKeeper,这个是商业的,但是免费给linux社区使用;

    linux社区有个人试图破解BitKeeper,被BitKeeper发现后不再免费提供使用权,于是linus花两周时间开发了一个分布式的版本控制系统,就是Git;

    其实Git功能和svn是类似的,但svn是集中管理,Git是分布式管理;

    集中管理:必须要有一台服务端,代码仓库是在服务端上,客户端(个人电脑)需要从服务器上同步代码到自己电脑上,开发完要推送到服务端,这种架构依赖网络,传输也比较慢;

    分布式:可以没有服务端,所有个人电脑都可以有完整的代码库,代码的更新、推送、分支、合并都可以在自己电脑上完成。它也支持多人协作,不过需要有一个公共的Git服务器作为支撑。

    二、安装Git

    1、CentOS上:

    yum -y install epel-release

    yum -y install git

    2、Ubuntu上

    sudo apt-get install git

    3、windows上安装msysgit

    https://git-for-windows.github.io/

    安装完成后,还需要设置用户名和邮箱

    git config --global user.name "fansik"

    git config --global user.email "shandingshangdeyu@hotmail.com"

    设置好用户名和邮箱后会在用户家目录下生成.gitconfig文件

    三、创建版本仓库并推送文件

    mkdir /home/gitroot

    cd /home/gitroot

    初始化,让/home/gitroot编程git可以管理的仓库

    git init

    初始化以后会在/home/gitroot目录下生成一个.git的目录

    添加个文件

    echo "fansik nimei" > fansik.java

    将更改的文件加入到代码仓库(加入后使用git diff就看不到不同了但是使用git status可以看到是暂存状态并显示修改的文件)

    git add fansik.java

    撤销提交:

    git reset HEAD fansik.java

    如果文件修改了但又想恢复成版本库中的内容可以使用:

    # git checkout -- fansik.java

    叫暂存文件提交到版本库中:

    git commit -m "add new fansik.java"

    四、版本变更

    多次更改fansik.java文件并进行add和commit操作后可以通过git log来查看修改记录

    git log显示所有提交git仓库的记录操作

    git log --pretty=oneline 每次修改显示为一行

    通过git log可以查看过去提交的所有版本,所以根据这个log可以指定回退某个版本

    git reset --hard dee6这个标识的版本,标识可以简写(最少4位)

    当退回到该版本后在git log则最上面的版本不在显示了,如果先在退回到第一行那个版本可以使用git reflog显示所有的版本

    五、文件删除

    先删除文件

    rm -rf 2.txt

    删除暂存文件

    git rm 2.txt

    删除仓库中的文件

    git commit -m "delete 2.txt"

  • 相关阅读:
    从万元户到千万富翁:6招助你蜕变
    16款有助于提升工作效率的工具
    8个身家百万的儿童创业者
    关于航模无刷电机发热问题的假想解决方案
    折腾了2个晚上无刷电调(ESC),电机终于转起来了,特此记录一下
    PWM占空比和分辨率(转)
    MSB与LSB(转)
    树莓派3uart wifi模块调试 (浪费了我3天时间的宝贵经验)
    USB加minicom使用串口
    【转】使用BBB的device tree和cape(重新整理版)
  • 原文地址:https://www.cnblogs.com/fansik/p/6043935.html
Copyright © 2011-2022 走看看