git:版本控制控制软件

Git是分布式版本控制系统,他是没有中央服务器的,每个人的电脑就像是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。

下图就是分布式版本控制工具管理方式:

  • Git简介

1 Git概念

同生活中的许多伟大事件一样,Git 诞生于一个极富纷争大举创新的年代。Linux 内核开源项目有着为数众广的参与者。绝大多数的 Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2002年间)。到 2002 年,整个项目组开始启用分布式版本控制系统 BitKeeper 来管理和维护代码。

到 2005 年的时候,开发 BitKeeper 的商业公司同 Linux 内核开源社区的合作关系结束,他们收回了免费使用 BitKeeper 的权力。这就迫使 Linux 开源社区(特别是 Linux的缔造者 Linus Torvalds )不得不吸取教训,只有开发一套属于自己的版本控制系统才不至于重蹈覆辙。他们对新的系统订了若干目标:

• 速度

• 简单的设计

• 对非线性开发模式的强力支持(允许上千个并行开发的分支)

• 完全分布式

• 有能力高效管理类似 Linux 内核一样的超大规模项目(速度和数据量)

本质:项目开发的管理工具,使用Git可以方便的完成团队的协作开发。以及项目

开发过程中的资源管理。

总结:

分布式:就是将由一个服务器运行的资源,拆分到多个服务器中运行。

 2. 版本控制工具的作用

协同修改

多人并行不悖的修改服务器端的同一个文件。

数据备份

不仅保存目录和文件的当前状态,还能够保存每一个提交过的历史状态。

版本管理

在保存每一个版本的文件信息的时候要做到不保存重复数据,以节约存储空间,提高运行效率。这方面 SVN 采用的是增量式管理的方式,而 Git 采取了文件系统快照的方式。

权限控制

对团队中参与开发的人员进行权限控制。

对团队外开发者贡献的代码进行审核——Git 独有。

历史记录

查看修改人、修改时间、修改内容、日志信息。

将本地文件恢复到某一个历史状态。

分支管理

允许开发团队在工作过程中多条生产线同时推进任务,进一步提高效率。

3. git工作流程 

代码工作区--->执行git add --->暂存区(临时存储)--->执行git commit--->本地库(历史版本)

工作区、暂存区和本地仓库,逻辑上是本地计算机。当我们新建一个文件时,文件位于工作区,处于已修改(modified)状态,表明文件已进行了修改,但还没有提交保存;通过命令 git add 将其添加到暂存区,文件是已暂存(staged)状态,表示把已修改的文件放到下次提交时要保存的清单中;通过命令 git commit将文件放入本地仓库,文件为已提交(commited)状态,表示该文件已经被安全地保存在本地数据库中,到这一步可以说是成功生成了一个新的版本。
远程仓库用来将本地仓库上传到网络,实现备份、共享和合作

4. Git官网

        Git:   https://git-scm.com/

5 Git 的优势

大部分操作在本地完成,不需要联网

尽可能添加数据而不是删除或修改数据

分支操作非常快捷流畅

与 Linux 命令全面兼容

  • Git常用命令

git init 初始化

全局设置

git config --global user.name "smallming"

git config --global user.email "472818129@qq.com"

设置成功后会在C:\Users\smallming(此目录是Windows系统账号名)中出现.gitconfig

git add filename 添加文件到缓存区

git commit -m “备注” 提交到本地库

git remote add origin 仓库地址 设置远程仓库地址

git push -u origin master 推送到远程仓库

git clone 克隆远程仓库内容

git pull origin master 拉取内容

git rm 删除文件

git checkout -b 分支名 master 创建分支

git branch 查看本地分支

git push origin 本地分支名:远程分支名  推送分支

git branch --set-upstream-to=origin/分支名 关联本地和远程分支

git merge --no-ff 分支名 把分支合并到当前分支(注意先切换到当前分支)

git branch -d 分支名 删除本地分支

git push origin --delete 分支名 删除远程分支

  • Git中常用分支及作用

主分支(master):主分支主要用于存放正式版本软件的。

开发分支(Develop):早晚提交时提交到这个分支。最后合并到主分支中。

功能分支(feature):一般为了开发特定功能而创建的分支。

预发分支(release):合并到Master之前做测试的。

修补bug分支(fixbug):软件发布后修补bug的分支。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值