git分布式版本控制工具

什么是分布式版本控制工具和集中式版本控制工具?集中式版本控制工具的版本库是存放在中央服务器的,团队中的每个人工作的时候都需要从中央服务器中下载代码,需要连接互联网,个人修改后需要推送至中央服务器,比如SVN版本控制工具。分布式版本控制工具则没有中央服务器器这一说,每个人的电脑都是完整的版本库,不需要联网,只需要把个人修改的推送给对方即可,比如git。

git分布式版本控制工具_第1张图片git分布式版本控制工具_第2张图片

 

如何使用git进行团队开发

git分布式版本控制工具_第3张图片

首先从远程下载代码,然后切换成自己的分支(如果需要的话),然后开始编写代码,编写好代码之后把修改/添加的部分加载到暂存区,之后提交到本地仓库,如果需要上传到远程仓库,上传之前则要拉取一下最新的代码(团队其他人可能已经上传了代码),如果代码冲突了需要和团队进行协商解决冲突 ,之后再推送到远程仓库。

 git安装和常用命令

(1)git安装

下载地址:Git - Downloadshttps://git-scm.com/downloadgit分布式版本控制工具_第4张图片

 根据自己电脑系统的类型进行下载,然后双击即可进行安装

(2)基本配置

安装git之后首先要做的事就是设置用户名和邮箱地址,之后的每一次提交都会使用到该信息。打开git bash 进行配置

 git config --global user.name "用户名"
 git config --global user.email "邮箱地址"

(3)创建本地仓库

git init

在电脑任意空白目录打开git bash输入git init创建一个本地仓库,创建成功后,则会看见一个.git目录(要显示隐藏目录)

(4)基本操作指令

在git工作目录下对文件进行修改(包括增删改文件),这些都会改变git工作状态

 git分布式版本控制工具_第5张图片

1.git add 文件名/通配符    -->把文件从工作区加入到暂存区
2.git commit -m '修改描述' -->把文件提交到本地仓库
  • 查看修改的状态
git status

如果是修改已有的文件,状态则是unstaged(未暂存);如果是新建的文件,状态则是untracked(未跟踪)

  • 查看提交日志
git log [options]
options:
    --all 显示所有分支
    --pretty=oneline 提交信息显示为一行
    --abbrev-commit 使commitid更为简短
    --graph 以图的形式显示

自定义git命令,使用命令打开~/.bashrc文件,和linux系统命令一致,vim ~/.bashrc
定义一个简单的查看日志命令:
alias git-log = 'git log --pretty=oneline --abbrev-commit --all --graph'
  • 分支
1.查看本地分支
git branch

2.创建本地分支
git branch 分支名称

3.切换分支
git checkout 分支名称

4.切换到一个不存在分区(创建并且换)
git checkout -b 分支名称

5.合并分区
git merge 分支名称

6.删除分支
(1)git branch -d 分支名称(删除时需要做各种检查)
(2)git branch -D 分支名称(强制删除)
  •  版本回退
1.回滚版本
git reset --hard 版本id

2.查看删除记录
git reflog

Git远程仓库

Git远程仓库可以借助代码托管平台实现,其中最常见的就是github平台,也有gitlab和gitee,github是用户和使用频次最多的平台,但是github服务器在国外,访问速度不佳,gielab需要自己搭建,所以本文采用gitee(码云)作为例子进行搭建远程仓库。

  • 注册gitee账号,地址:注册 - Gitee.comhttps://gitee.com/signup#lang=zh-CN

git分布式版本控制工具_第6张图片

  • 注册之后新建远程仓库 

git分布式版本控制工具_第7张图片

  •  配置SSH公钥
1.生成ssh公钥
输入:ssh-keygen -t rsa
然后不断按回车即可

2.获取生成的公钥
cat ~/.ssh/id_rsa.pub

git分布式版本控制工具_第8张图片

验证公钥是否配置成功:
ssh -T [email protected]

出现:
You've successfully authenticated, but GITEE.COM does not provide shell access.
则配置成功
  •  添加远程仓库
git remote add <远程名称> <仓库路径>

远程名称:默认是origin,可更改为其他名字
仓库路径:从远程仓库中可以获取

例如: git remote add origin https://gitee.com/badbadman/test.git
  • 查看远程仓库
git remote

  •  推送到远程仓库
命令:git push [-f] [--set-upstream] [远程名称 [本地分支名][:远端分支名]]
如果远程分支名和本地相同则可以只写本地分支名

-f 可选参数,表示强制覆盖
--set-upstream 推送到远程仓库同时建立起远程分支的关联关系,之后直接使用git push即可
  •  查看本地分支和远端分支的关联关系
git branch -vv
  • 克隆和拉取远程仓库
1.克隆仓库
git clone 远程仓库地址

2.远程仓库抓取
git fetch [远端名称] [分支名称] 如果不指定名称和分支,默认抓取所有分支

3.合并本地和远端分支(远程分支也是一个分支)
git merge 远程分支名称

4.拉取远程仓库
git pull  [远端名称] [分支名称]   -->相当于抓取后自动合并,等同于fetch和merge

你可能感兴趣的:(git,分布式,github)