了解Git个人开发以及多人协同开发的命令操作与问题等等。。。
操作环境: windows10、pycharm、Python3.6、Cmder、Git、谷歌浏览器
Git简介
Git 是目前世界上最先进的分布式版本控制系统(没有之一)
安装下载: Git可在所有操作系统上运行,但其安装方法有异。要在Windows系统下安装Git,请访问 https://gitforwindows.org/ ,并单击Download。(直接傻瓜式安装点击下一步即可,注意配置安装的指定路径,也可默认安装)
作用: 源代码管理
- 多人协同开发
- 版本控制
Git的诞生:
- 作者是 Linux 之父:Linus Benedict Torvalds
- 当初开发 Git 仅仅是为了辅助 Linux 内核的开发(管理源代码)
git 开发时间表
git 的产生是 Linux Torvals 在无奈被逼的情况下创造的,我看了一下时间历程:- 2005 年 4 月3 日开始开发 git
- 2005 年 4 月 6 日项目发布
- 2005 年 4 月 7 日 Git 开始作为自身的版本控制工具
- 2005 年 4 月 18 日发生第一个多分支合并
- 2005 年 4 月 29 日 Git 的性能达到 Linux 预期
- 2005年 7 月 26 日 Linux 功成身退,将 Git 维护权交给 Git 另一个主要贡献者 Junio C Hamano;
- 直到现在Git 迅速成为最流行的分布式版本控制系统,尤其是 2008 年,GitHub 网站上线了,它为开源项目免费提供 Git 存储,无数开源项目开始迁移至 GitHub,包括 jQuery,PHP,Ruby 等等
Git管理源代码特点:
Git
是分布式管理.服务器和客户端都有版本控制能力,都能进行代码的提交、合并、…- Git会在根目录下创建一个.git隐藏文件夹,作为本地代码仓库
Git操作流程图解:
Git服务器 --> 本地仓库 --> 客户端 --> 本地仓库 --> Git服务器
工作区&暂存区&仓库区
使用网图简单了解:
工作区: 对于添加、修改、删除文件的操作,都发生在工作区中;
暂存区: 暂存区指将工作区中的操作完成小阶段的存储,是版本库的一部分;
仓库区: 仓库区表示个人开发的一个小阶段的完成
- 仓库区中记录的各版本是可以查看并回退的
- 但是在暂存区的版本一旦提交就再也没有了
Git单人操作本地仓库
1、创建项目: 在D盘或者E盘中创建一个文件夹:bubai,表示是工作的项目
2、创建本地仓库:
- 进入到bubai,并创建本地仓库.git
- 新创建的本地仓库.git是个空仓库
cd git_pro/bubai
git init
创建本地仓库 .git后
3、配置个人信息:
git config user.name '卜白'
git config user.email 'bubai@163.com'
配置个人信息后: 在.git文件夹下的config文件下的变化如下表明配置成功。
4、新建py文件: 在bubai文件夹下新建一个bubai.py文件,用于版本控制演示
5、查看文件状态:
- 红色表示新建文件或者新修改的文件,都在工作区.
- 绿色表示文件在暂存区
- 新建的 bubai.py 文件在工作区,需要添加到暂存区并提交到仓库区
git status
6、将工作区文件添加到暂存区
// 添加项目中所有文件
git add .
或者
// 添加指定文件
git add bubai.py
7、将暂存区文件提交到仓库区
- commit会生成一条版本记录
- -m后面是版本描述信息
git commit -m '提交'
8、接下来在 bubai.py 文件中编辑代码、
- 代码编辑完成后即可进行add和commit操作
- 提示:添加和提交合并命令
- 仅限于修改代码,若第一次必须先add
git commit -am "版本描述"
这里编辑两次代码并提交两次记录:
9、查看历史版本:
git log
或者
git reflog
两个查看历史版本命令的区别:
git reflog 可以查看所有分支的所有操作记录(包括commit和reset的操作),包括已经被删除的commit记录,git log 则不能察看已经删除了的commit记录。
10、回退版本:
- 方案一:
- HEAD表示当前最新版本
- HEAD^表示当前最新版本的前一个版本
- HEAD^^表示当前最新版本的前两个版本,以此类推…
- HEAD~1表示当前最新版本的前一个版本
- HEAD~10表示当前最新版本的前10个版本,以此类推…
git reset --hard HEAD~1
- 方案二:当版本非常多时可选择的方案
- 通过每个版本的版本号回退到指定版本
git reset --hard 版本号
11、撤销修改
- 只能撤销工作区、暂存区的代码,不能撤销仓库区的代码
- 撤销仓库区的代码就相当于回退版本操作
-
撤销工作区代码
- 新加代码bubai3 = 30,不add到暂存区,保留在工作区
git checkout 文件名
-
2. 撤销暂存区代码
- 新加代码bubai3 = 30,不add到暂存区,保留在工作区
# 第一步:将暂存区代码撤销到工作区
git reset HEAD 文件名
# 第二步:撤销工作区代码
git checkout 文件名
Git简介与单人操作本地仓库到此结束,后续会更新多人协同开发与操作远程仓库等…