版本控制(Revision Control) 在开发的过程中,记录文件、目录、工程等内容的变更历史,方便在以后查看、更改或回滚到先前的状态。

Git是一个开源、分布式的版本控制系统,可以方便、有效地管理不同规模项目的代码版本。它最初是由Linux创始人Linus Torvalds为了管理Linux内核代码而开发的。

本次分享主要分为3个部分。第1部分借助一个演示项目,旨在帮助读者快速掌握Git的日常使用;第2部分给出Git常用命令的手册,方便大家在需要的时候查询;第3部分给大家介绍分支管理的常用模型。

Git几个概念。

  • 3个工作区
    工作区(Working Dir): 是指开发过程中,代码创作所在的本机目录;
    暂存区(Staging Index): 临时保存工作区与版本库之间差异的缓冲地带;
    版本库(Repository): 可看做记录提交历史的地方。
  • 2个仓库
    本地仓库(Local Repo): Git作为分布式的版本管理系统,会为每个项目,在工作电脑上生成一个本地仓库。当我们通过git commit提交代码时,实际上就是将更改从本地工作目录提交到了本地仓库
    远程仓库(Remote Repo): 在远程服务器(如Github、Gitlab)上建立的仓库。当我们使用git push推送代码时,代码就从本地仓库推到了远程仓库

Git全局设置

# 设置代码提交者的用户名
git config --global user.name "chenqi"
# 设置代码提交者的邮箱
git config --global user.email "chenqi@deeptest.com"

注:请将用户名和密码替换成您自己的。

克隆项目代码

  • 执行以下命令,克隆演示项目到当前目录;

    git clone https://gitee.com/ngtesting/ci_test_pytest.git
  • 进入目录ci_test_pytest,使用branch指令查看远程仓库的分支列表;

    git branch -r
      origin/dev
      origin/master
  • 使用branch指令查看本地仓库中的分支,前面有星号的为当前工作分支;

    git branch
      dev
      * master

代码修改和提交

  • 新建一个名为test2.txt的文件,使用add指令添加到版本控制;

    git add test2.txt
  • 修改名为原有test.txt文件的内容;
  • 使用commit指令,提交修改;

    $ git commit -m "update files"
      [master 97903e8] update files
      2 files changed, 1 insertion(+)
      create mode 100644 test.txt
      create mode 100644 test2.txt
  • 使用push指令,推送修改到远程;

    $ git push
      Enumerating objects: 5, done.
      Counting objects: 100% (5/5), done.
      Delta compression using up to 16 threads
      Compressing objects: 100% (2/2), done.
      Writing objects: 100% (4/4), 301 bytes | 301.00 KiB/s, done.
      Total 4 (delta 1), reused 0 (delta 0), pack-reused 0
      remote: Powered by GITEE.COM [GNK-6.4]
      To https://gitee.com/ngtesting/ci_test_pytest.git
         6efcdee..97903e8  master -> master

共享新项目到远程仓库

  • 在Gitee网站注册一个账号后登录;
  • 进入新建仓库页面,创建一个新项目;
    image.png
  • 打开命令行窗口,执行以下命令,新建一个项目并初始化;

    mkdir new_project
    cd new_project
    git init 
  • 新建1个文件,将其加入版本控制;

    touch README.md
    git add README.md
    git commit -m "first commit"
  • 设置项目远程仓库地址,并推送代码到远程;

    git remote add origin https://gitee.com/ngtesting/new_project.git
    git push -u origin "master"

    注:此处URL需替换成您新建的仓库地址

开源上述Gitee项目使公众可见

  • 在该项目详情页,点击管理,进入项目管理标签页;
  • 滚动到页面底部,设置项目为开源(所有人可见)
    image.png

专题目录


陈哥聊测试
158 声望3.3k 粉丝

资深敏捷测试顾问,国内知名项目管理软件禅道团队成员。