通过git 实现简单的版本控制--windows下(上传,回退)
前言:
本文偏入门,主要介绍什么是git,以及借助git呢实现简单的版本控制,若有叙述不对的地方,希望各位能积极指出,我也能积极改正
若你已经有一定的基础,且对Git 有一定的认识,想更深入的了解,那么本文可能不太适合你,不过也欢迎审阅,指出不足,多谢。
什么是Git?
git ---(分布式版本控制系统)
简单来说,这个小工具可以帮助你实现简单且有效的版本控制。
以下内容摘自百度百科:
为什么要用git?
回答这个问题,首先应该是回答为什么我们需要进行版本控制?
版本控制可以帮助你方便管理你对项目的每一次更改,你可以对你的每一个版本进行保存而不用占用额外的存储空间。也可以轻易的切换到你的任何一个版本,或者撤销、放弃本次更改。
我先拿我自己举一个亲身经历,我本人在参加某个比赛的时,在私下写代码时呢,首先完成了要求中的要求,但是个人感觉实现方法不是很正确,导致虽然能够首先比赛要求,但是在实现效果以及过程上显得不是很科学或者说不是很令人满意。
于是为了精益求精,我选择在没有备份的情况下进行修改。。(真的是作死!),结果呢,在时间紧张的情况下,比赛验收的时候我还没能完成修改的情况下,我已经找不回我之前效果最好的版本了。。。。在其中找一个合适的硬着头皮交上去了。 于是乎 GG。
在那之后,由于还没有接触到git, 对于版本控制也只有一个笼统的概念,对于程序的备份采取的方法是,将整个工程压缩打包成一个压缩包,将其存储在一个文件夹中,并取一个形象且贴切的名字。(如下)
如上,并不是说这种方式不好(其实我的确觉得不太好),只是若作为版本控制来说,太过繁琐且不够直观。在某些特定的情况下,这种方式是挺好的。
但在在使用git后,如同打开新世界的大门。
使用git你可以:
⚪只要你想你可以保存自己的每一次修改。
⚪你可以对自己的每一次修改进行备注、描述。
⚪你可以返回之前的每一次修改,回到每一个版本。
但是这都只是他浅显的使用,你还可以将其链接到服务器上实现同步,也可以进行多人协作互不干扰。
在这里先**本文只介绍如何借助git 实现保存更改,恢复版本。**
# 下载git
[Git-Downloads](http://git-scm.com/downloads) 这是应该是比较官方的下载地址,但可能存在访问太慢的问题。
由于我是直接从别人拿拷贝的安装包,因此具体的下载或者安装可以查阅相关资料。
我自己使用的包:
链接:[百度云链接](https://pan.baidu.com/s/1xHiGl2vUAxNT5HCzlz1I8g) 提取码:uh6x
# 创建
安装十分简单,也没什么特殊的配置(若遇到问题可以私信我或者自行查阅相关资料)
首先在安装结束后,你需要配置自己的账户信息。
## 打开 Git Bash
首先在菜单中找到 Git Bash (如下图)
打开后会有类似控制台的界面。
接着在其中输入
通过命令行配置自己的账户名和邮箱
```
$ git config --global user.name "Your Name"
$ git config --global user.email "[email protected]"
```
这里的 "Your Name" 和 "[email protected]" 替换成你自己想要设定的信息,这样在每次改动的时候你可以知道是谁提交的更改(在多人协作中)
## 如何新键一个Repository 版本库
Git 支持两种方法 一种是通过Git bash 命令行来实现,一种是通过Git GUI 可视化界面来实现。
在这里只介绍Git bash 方法:
进入你的项目文件根目录中,鼠标右键空白区域,选择git bash
再依次输入:
```
$ git init .
$ git add .
$ git commit
```
如下:
在输入 git commit 之后,会弹出你在安装的时候选择的文本编辑器,你只需要在文件开头写上你的对本次更改的描述即可。
如我写的是: Init and First commit
保存后关闭文本编辑器即可。
这样你就完成了 **创建一个版本库** 以及 **保存了一次更改及其它的描述**!
以下是对指令的解释
```
git init . //在当前路径创建Repository版本库,用来创建
```
```
git add . //添加所有为保存修改
git commit //保存所有未保存修改
```
## 如何回退到之前的版本
这里我们采用Git GUI来实现:
仍是在当前根目录右键空白处 不过选择的是 **git GUI**。
点击GUI界面右上角的 **Repository** ,选择 **Visualize master's History**
进入后,你可以看到之前的若干次comit ,包括时间,描述,以及作者。
选择你想要回退的版本,右键它,选择 Reset master branch to here ,
再接下来弹出的框中选择第三项 Hard : Reset working tree and index即可。 注意,恢复后所有之前的文件都会回到你commit时的状态.
# 尾--结束以及扩展
在这里主要面向和我一样,接触版本控制不长,且对git仰慕已久的初学者,可以更快的上手和熟悉这一强大的工具,若想让我在这里详细介绍 git 的作用机理以及更深的内容,我想我也没办法说清楚。
另外若想更熟悉以及更良好的掌握 git 的使用,建议可以看一下廖雪峰的git教程,简单且详细。
[廖雪峰的Git教程](https://www.liaoxuefeng.com/wiki/896043488029600)
另外菜鸟教程的似乎也不错:[Git 教程--菜鸟教程](https://www.runoob.com/git/git-tutorial.html)
但个人还是觉得廖雪峰的更好一点
若有阐述不对的地方望海涵,希望能在评论中指出,方便大家共同进步。