1.GIT(分布式版本控制系统):
是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。
1.1Git和其他集中式的区别:
分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。
1.2Git的功能特性:
从一般开发者的角度来看,git有以下功能:
1、从服务器上克隆完整的Git仓库(包括代码和版本信息)到单机上。
2、在自己的机器上根据不同的开发目的,创建分支,修改代码。
3、在单机上自己创建的分支上提交代码。
4、在单机上合并分支。
5、把服务器上最新版的代码fetch下来,然后跟自己的主分支合并。
6、生成补丁(patch),把补丁发送给主开发者。
7、看主开发者的反馈,如果主开发者发现两个一般开发者之间有冲突(他们之间可以合作解决的冲突),就会要求他们先解决冲突,然后再由其中一个人提交。如果主开发者可以自己解决,或者没有冲突,就通过。
8、一般开发者之间解决冲突的方法,开发者之间可以使用pull 命令解决冲突,解决完冲突之后再向主开发者提交补丁。
从主开发者的角度(假设主开发者不用开发代码)看,git有以下功能:
1、查看邮件或者通过其它方式查看一般开发者的提交状态。
2、打上补丁,解决冲突(可以自己解决,也可以要求开发者之间解决以后再重新提交,如果是开源项目,还要决定哪些补丁有用,哪些不用)。
3、向公共服务器提交结果,然后通知所有开发人员。
1.3 Git的优点:
1.适合分布式开发,强调个体。
2.公共服务器压力和数据量都不会太大。
3.速度快、灵活。
4.任意两个开发者之间可以很容易的解决冲突。
5.可以离线工作。
1.4 Git的缺点:
1. 资料少(起码中文资料很少)。
2. 学习周期相对而言比较长。
3. 不符合常规思维。
4. 代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。
Git是分布式的,Git不需要有中心服务器,我们每台电脑拥有的东西都是一样的。我们使用Git并且有个中心服务器,仅仅是为了方便交换大家的修改,但是这个服务器的地位和我们每个人的PC是一样的。我们可以 把它当做一个开发者的pc就可以就是为了大家代码容易交流不关机用的。没有它大家一样可以工作,只不 过“交换”修改不方便而已。
1.5 Git运行流程图:

1.6 Git的工作流程图:

2.安装Git软件
2.1下载与安装
复制下面的网址,在浏览器复制粘贴搜索,然后根据自己电脑的系统安装相应的版本,下载,跳出弹窗一直选择下一步,然后选择自己剩余内存相对大一点的盘

2.2 安装成功
双击下载的安装文件来安装Git。安装完成后在电脑桌面(也可以是其他目录)点击右键,如果能够看到如下两个菜单则说明Git安装成功。出现如下图所示就表示下载成功了

2.3 输入命令
安装完成后,还需要最后一步设置,在命令行输入:
设置你的用户名:
$ git config --global user.name "Your Name"
设置你的邮箱地址:
$ git config --global user.email "email@example.com"
查看配置信息
git config --global user.name
git config --global user.email
3初始化Git本地仓库
要使用Git对我们的代码进行版本控制,首先需要获得==本地仓库==;本地仓库你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。
3.1)在电脑的任意位置创建一个空目录(例如test)作为我们的本地Git仓库

3.2)进入这个目录中,点击右键打开Git bash窗口,如下图

3.3)执行命令git init
3.4)如果创建成功后可在文件夹下看到隐藏的.git目录。

细心地同学就会发现,我们创建的目录下会出现一个叫 .git的文件夹,这个目录是Git来跟踪管理版本库的,==没事千万不要手动修改这个目录里面的文件==,不然改乱了,就把Git仓库给破坏了。 如图所示

-
git add (工作区 --> 暂存区)
-
git commit (暂存区 --> 本地仓库)
3.5命令行:git status
查看修改的状态(status)
作用:查看的修改的状态(暂存区、工作区)
3.6命令行:git add
单个文件名||通配符
添加工作区到暂存区(add)
作用:添加工作区一个或多个文件的修改到暂存区
将所有修改加入暂存区:git add .
3.7命令行:git commit -m '注释内容'
提交暂存区到本地仓库(commit)
作用:提交暂存区内容到本地仓库的当前分支
3.8命令行:git log [option]
查看提交日志(log)
作用:查看提交记录
options
--all 显示所有分支
--pretty=oneline 将提交信息显示为一行
--abbrev-commit 使得输出的commitId更简短
注意:
有些常用的指令参数非常多,每次都要输入好多参数,我们可以使用别名。
1. 打开用户目录,创建 .bashrc 文件
部分windows系统不允许用户创建点号开头的文件,可以打开gitBash,执行 touch ~/.bashrc
3.9添加文件至忽略列表
一般我们总会有些文件无需纳入Git 的管理,也不希望它们总出现在未跟踪文件列表。 通常都是些自动生成的文件,比如日志文件,或者编译过程中创建的临时文件等。 在这种情况下,我们可以在工作目录中创建一个名为 .gitignore 的文件(文件名称固定),列出要忽略的文件模式。
4.分支
几乎所有的版本控制系统都以某种形式支持分支。 使用分支意味着你可以把你的工作从开发主线上分离开来进行重大的Bug修改、开发新的功能,以免影响开发主线.
4.1命令行:git branch
查看本地分支
4.2命令行:git branch 分支名
创建本地分支
4.3命令行:git checkout 分支名
切换分支
4.4命令行:git checkout -b 分支名
我们还可以直接切换到一个不存在的分支(创建并切换)
4.5命令行:git merge 分支名称
合并分支:一个分支上的提交可以合并到另一个分支
不能删除当前分支,只能删除其他分支
4.6命令行:git branch -d b1
删除分支时,需要做各种检查。 查看当前分支有没有没合并的内容
4.7命令行:git branch -D b1
不做任何检查,强制删除.
5. Git远程仓库
5.1注册码云:
5.1.1.注册账号
要想使用码云的相关服务,需要注册账号(地址: 注册 - Gitee.com ),页面如下图所示。

5.1.2.创建远程仓库

5.1.3.创建远程仓库

5.1.4.仓库创建完成后可以看到仓库地址,如下图所示:

5.1.5如果有本地仓库。
本地仓库关联远程仓库地址:
git remote add 名称(默认为origin 可以随便起) 远程仓库的地址。
把本地仓库的代码推送到远程仓库
git push 名称 本地分支名:远程分支名 如果本地分支名和远程分支名相同可以只写一个。
6. 添加免密登录
(1)第一次登录需要设置账号和密码。
(2)因为你的仓库属于私有的,组员也无法访问你远程仓库的代码。
我们可以通过公钥来允许其他成员以及自己来访问该仓库。
使用: ssh-keygen -t rsa 来帮你生成公钥。
四次回车即可生成公钥,然后按下面的路径找到你的公钥和密钥



上面添加的公钥只能在一个仓库添加。例如: 张三要访问我们gitee仓库,那么张三的公钥应该给我,我把它添加到ssh公钥, 其他人也想让张三访问他的gitee仓库,那么必须我的删除ssh公钥。
$git init
$git add .
$git commit -m '项目架构的搭建'
$git remote add origin git@gitee.com:yuhuimeng/yhm_am.git
$git add .
$git push origin master
$git clone 复制粘贴想远程的,然后在文件夹里查看,找到sal就证明成功了
git clone gitee的地址
从远程仓库克隆项目----作用:克隆下来的项目会自动有本地仓库而且会自动和远程仓库关联。
张三: resource: a.xml------> 拉取我提交的代码: git pull origin master
4.idea关联git
上面所有的操作都是基于命令模式进行的,在实际开发中我们使用idea开发。
要用idea关联git。从而完成图形化操作。

通过idea创建本地仓库

添加到暂存区--git add .

提交到本地仓库-- git commit -m '描述'


提交到远程仓库----git push origin master

克隆下来后使用idea打开。
$ git clone 你要克隆的人的公钥
1.开发步骤:
主分支上----子分支(按照功能)---->add .----commit --->切换主分支----合并分支内容---->拉取远程仓库的内容---推送
本文详细介绍了Git,一个开源的分布式版本控制系统,用于高效管理项目版本。Git与其他集中式系统的最大区别在于其分布式特性,允许开发者在本地提交。主要功能包括克隆、分支、提交、合并等。Git优点包括速度快、灵活性高、易于解决冲突,但也有学习曲线较陡、资料较少等缺点。文中还阐述了Git的工作流程,并提供了安装、配置、初始化仓库、分支管理和远程仓库的步骤。此外,还介绍了如何在IntelliJ IDEA中使用Git进行图形化操作。

1万+

被折叠的 条评论
为什么被折叠?



