博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
版本控制系统git
阅读量:4879 次
发布时间:2019-06-11

本文共 1866 字,大约阅读时间需要 6 分钟。

6月30日学习笔记:

版本控制系统git:

1、应用:

记录文件的所有历史变化
随时可恢复到任何一个历史状态
多人协作开发或修该
错误恢复
多功能并行开发

2、分类:

本地版本控制系统
集中化版本控制系统
分布式版本控制系统

3、基本概念:

repository -- 存放所有文件及其历史信息
checkout -- 取出或切换到指定版本的文件
version -- 记录标识一个版本(编号或其他代码)
tag -- 记录标识一个主要版本(1.0 2.0 3.0)

本地版本控制系统(LVCS)
如:RCS(在很多Linux里都有)
优点:简单,很多系统中都内置
适合管理本地文件
(如配置文件、文章、信件、简单的文档等等)
缺点:
适合管理少量文件、不支持基于项目的管理
支持的文件类型较少单一
不支持网络、无法实现多人协作

集中式版本控制系统(CVCS)
CVS
优点:
适合多人团队协作开发
代码集中化管理
缺点:
单点故障(能支持集群或备份吗?)
必须联网工作,无法单机本地工作

分布式版本控制系统(DVCS)
如Git
优点:
适合多人团队协作开发
代码集中式管理
可以离线工作
每个计算机都是一个完整仓库

Git原理 - 快照。而非保存区别(即打补丁)

- 文件的鉴别和操作(通过校验和算法识别文件变化,多数操作均为添加数据,即使误删除,通过以前版本找回!!)

- 文件状态及工作区域(在工作目录下编辑、修改-->在暂存区暂存已经修改的文件-->最终确定的文件保存到仓库成为一个新的版本、并且对他人可见 )

git add hellogit.rb

 

如何在不同的操作系统下安装Git(git-scm.com)

LINUX:
yum list | grep git
yum install -y git
sudo apt-get install git

git --version

..........
......

安装完后
Git --基础设置
1、设置用户名
git config --global user.name "IterCast"
2、设置用户邮箱
git config --global user.email "demo@itercast.com"
3、查看设置
git config --list

Git命令帮助

git help
git help 特定命令
比如:git help add

如何初始化一个新的Git仓库

1、创建一个文件夹(或使用已有文件夹)
mkdir xxoo
2、在文件夹内初始化Git,创建Git仓库
cd xxoo
git init

ls -a

cd .git

ls

.....

....

向仓库添加新的文件:
如:
touch README
vim hellogit.rb
puts "hello git"
ls
git status

git add README

git add hellogit.rb
git status

git commit -m "init repo"

git status

git log

直接提交到仓库(“不暂存”,即让git自动完成暂存)
git commit -a -m "modify hellogit"
vim README
"this is a girl"
ls
git status
git commit -a -m "modify hellogit"
git status

删除文件

1、删除文件
rm README
2、从Git中删除文件(但文件依然被记录在Git仓库历史记录中,即只删除当前版本文件)
git rm README
3、提交操作
git commit -m "delete README"

重命名文件
git mv hellogit.rb helloworld.rb
git commit -m "rename hellogit.rb file"

Git远程仓库(就是保存在服务器上的Git仓库文件)
通过网络通过访问协议访问远程仓库

访问协议有:

local
SSH
Git
HTTP/HTTPS

1、使用现有的Git网络仓库服务

代码托管服务:
github(比如提交自己的作品到这里,去公司面试时,就说在这仓库里,有我的作品,呵呵!!)
bitbucket

2、搭建自己的Git仓库服务器

转载于:https://www.cnblogs.com/L-H-R-X-hehe/p/3817442.html

你可能感兴趣的文章
unity点选构建Mesh并保存OBJ
查看>>
python kmeans实战 - 单机一层聚类(小玩具哦),下次再弄个分布式多次聚类
查看>>
Java主要有那几种文件类型?各自的作用是什么?
查看>>
我的第一个python web开发框架(29)——定制ORM(五)
查看>>
2017.11.18 手把手教你学51单片机-点亮LED
查看>>
xml的创建与解析
查看>>
grep不区分大小写查找字符串方法
查看>>
全双工和半双工
查看>>
2.1什么是软件需求,什么是功能需求
查看>>
linux系统灵活运用灯[android课程3]
查看>>
Android 通用Dialog中设置RecyclerView
查看>>
利用 Android Studio 和 Gradle 打包多版本APK
查看>>
Android 自定义标题栏
查看>>
Android 如何把一个 RelativeLayout或ImageView背景设为透明
查看>>
tomcat优化方向
查看>>
http
查看>>
8-1-组队赛
查看>>
codility: CountTriangles
查看>>
赛斯说
查看>>
python 中的pipe
查看>>