新手入门学习使用Git版本管理工具这一篇足够了

什么是Git

Git 是一个免费的开源 分布式版本控制系统,旨在快速高效地处理从小到大的所有项目

Git易于学习, 占用空间小,性能快如闪电。它优于 Subversion、CVS、Perforce 和 ClearCase 等 SCM 工具,具有便宜的本地分支、方便的暂存区和 多个工作流等功能

可以有效、高速的处理项目从0到1的各种版本

Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件

Torvalds 开始着手开发 Git 是为了作为一种过渡方案来替代 BitKeeper,后者之前一直是 Linux 内核开发人员在全球使用的主要源代码工具。开放源码社区中的有些人觉得 BitKeeper 的许可证并不适合开放源码社区的工作,因此 Torvalds 决定着手研究许可证更为灵活的版本控制系统。尽管最初 Git 的开发是为了辅助 Linux 内核开发的过程,但是我们已经发现在很多其他自由软件项目中也使用了 Git

Git特点

  1. 直接记录快照,而非差异比较

  2. 近乎所有操作都是本地执行

  3. 时刻保持数据完整性

  4. 多数操作仅添加数据

Git功能

一般开发者眼中的Git:

  • 从git仓库克隆数据到本地
  • 在本地上进行创建、修改
  • 将自己创建的文件进行上传提交
  • 可以进行分支创建、分支修改,然后合并发送
  • 新建分支,在仓库内最新数据fetch下来,然后再合并至主分支
  • 生成补丁,将补丁递交给仓库管理员
  • 通过仓库管理员查看完日志后的反馈记录,如遇开发者有冲突问题,会让开发者进行沟通,解决问题
  • 一般开发者之间解决冲突的方法,开发者之间可以使用pull 命令解决冲突,解决完冲突之后再向主开发者提交补丁

仓库管理员眼中的Git:

  • 通过邮件、仓库历史提交记录或者其它方式查看开发者的提交状态
  • 打补丁,解决问题冲突
  • 向对外服务器提交最后结果

优点:

  • 适合分布式开发,强调个体
  • 公共服务器压力和数据量都不会太大
  • 速度快、灵活
  • 任意两个开发者之间可以很容易的解决冲突
  • 离线工作

缺点:

  • 不符合常规思维
  • 代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息
  • 学习周期相对而言比较长

Git 与 SVN 区别

Git 不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等

如果你是一个具有使用 SVN 背景的人,你需要做一定的思想转换,来适应 Git 提供的一些概念和特征

区别点

1、Git 是分布式的,SVN 不是:这是 Git 和其它非分布式的版本控制系统,例如 SVN,CVS 等,最核心的区别。

2、Git 把内容按元数据方式存储,而 SVN 是按文件:所有的资源控制系统都是把文件的元信息隐藏在一个类似 .svn.cvs 等的文件夹里。

3、Git 分支和 SVN 的分支不同:分支在 SVN 中一点都不特别,其实它就是版本库中的另外一个目录。

4、Git 没有一个全局的版本号,而 SVN 有:目前为止这是跟 SVN 相比 Git 缺少的最大的一个特征。

5、Git 的内容完整性要优于 SVN:Git 的内容存储使用的是 SHA-1 哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏

在这里插入图片描述

补充:

SVN优缺点

优点:

1、管理方便,逻辑明确,符合一般人思维习惯

2、易于管理,集中式服务器更能保证安全性

3、代码一致性非常高

4、适合开发人数不多的项目开发

缺点:

1、服务器压力太大,数据库容量暴增

2、如果不能连接到服务器上,基本上不可以工作,看上面第二步,如果服务器不能连接上,就不能提交,还原,对比等等

3、不适合开源开发,但是一般集中式管理的有非常明确的权限管理机制(例如分支访问限制),可以实现分层管理,从而很好的解决开发人数众多的问题

Git 简明指南

在这里插入图片描述

Git安装配置

在使用Git前我们需要先安装 Git。Git 目前支持 Linux/Unix、Solaris、Mac和 Windows 平台上运行

官网
进入官网后显示如下界面,点击框选区域
在这里插入图片描述
点击上方框选区域也会进入如下链接,如图所示,也可以直接点击此链接哦
然后根据对应得电脑系统进行点击下载
如果是windows系统则可以进行傻瓜式安装了
其他系统需要做一些配置和进行命令安装

下载地址
在这里插入图片描述
windows
看好自己电脑是多少位,安装对应得哦
在这里插入图片描述
如果打不开或者下载不了,可以在我CSDN资源里下载哦:链接

mac
在这里插入图片描述

Linux / Unix
在这里插入图片描述
中文学习网

Git命令

常用命令

命令 简要说明
git add 添加至暂存区
git add–interactive 交互式添加
git apply 应用补丁
git am 应用邮件格式补丁
git annotate 同义词,等同于 git blame
git archive 文件归档打包
git bisect 二分查找
git blame 文件逐行追溯
git branch 分支管理
git cat-file 版本库对象研究工具
git checkout 检出到工作区、切换或创建分支
git cherry-pick 提交拣选
git citool 图形化提交,相当于 git gui 命令
git clean 清除工作区未跟踪文件
git clone 克隆版本库
git commit 提交
git config 查询和修改配置
git describe 通过里程碑直观地显示提交ID
git diff 差异比较
git fetch 获取远程版本库的提交
git format-patch 创建邮件格式的补丁文件。参见 git am 命令
git grep 文件内容搜索定位工具
git gui 基于Tcl/Tk的图形化工具,侧重提交等操作
git help 帮助
git init 版本库初始化
git init-db* 同义词,等同于 git init
git log 显示提交日志
git merge 分支合并
git mergetool 图形化冲突解决
git mv 重命名
git pull 拉回远程版本库的提交
git push 推送至远程版本库
git rebase 分支变基
git rebase–interactive 交互式分支变基
git reflog 分支等引用变更记录管理
git remote 远程版本库管理
git repo-config* 同义词,等同于 git config
git reset 重置改变分支“游标”指向
git rev-parse 将各种引用表示法转换为哈希值
git revert 反转提交
git rm 删除文件
git show 显示各种类型的对象
git stage* 同义词,等同于 git add
git stash 保存和恢复进度
git status 显示工作区文件状态
git tag 里程碑管理

用户信息

配置个人的用户名称和电子邮件地址

// 配置用户名
git config --global user.name "root"
// 配置电子邮件地址
git config --global user.email [email protected]

用了 --global 选项,那么更改的配置文件就是位于你用户主目录下的那个,以后你所有的项目都会默认使用这里配置的用户信息

如果要在某个特定的项目中使用其他名字或者电邮,只要去掉 --global 选项重新配置即可,新的设定保存在当前项目的 .git/config 文件里

查看个人的用户名称和电子邮件地址

// 配置用户名
git config user.name
// 配置电子邮件地址
git config user.email

路径、文件

查看:
pwd

修改路径则是传统的cd xx命令

查看项目文件ll

创建gitee仓库

官网

因为外网GitHub暂时进不去就不教使用GitHub了,步骤一样的哦

首先我们需要创建个人账户哦

在这里插入图片描述
按照步骤填写即可
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

mkdir test  // 创建文件夹
cd test // 进入文件夹
git init // 初始化
touch README.md // 创建md格式文件
git add README.md // 将文件提交暂存区
git commit -m "first commit"  // 提交
git remote add origin https://gitee.com/still-far-away/test.git // 选择自己的仓库
git push -u origin master // 推送

在本机做完这些刷新页面就可以了
在这里插入图片描述
选择仓库地址后面地址就是在这呢
在这里插入图片描述
我们也可以通过这个地址进行克隆
但是这时候会有一个提示,没有克隆权限
在这里插入图片描述
这时候我们运行
ssh-keygen创建秘钥
在出现提示时候直接enter
创建完毕后他会告诉你一个地址
在C盘下哦
运行下面代码查看秘钥
cat ~/.ssh/id_rsa.pub
将秘钥复制
在这里插入图片描述
粘贴至这里即可 点击添加
在这里插入图片描述
在这里插入图片描述
上面只是为单独仓库设置

也可以全局
在这里插入图片描述
在这里插入图片描述
再次克隆即可成功
在这里插入图片描述

Git完整命令手册

后续博文更加精彩哦,敬请期待

猜你喜欢

转载自blog.csdn.net/blue_698/article/details/118056646