目录
1. Git 介绍
2. Git 安装
3. Git 使用
4. Git 操作命令
4.1 本地
(1)查看文件状态
(2)添加工作区到暂存区(add)
(3)提交暂存区到本地仓库(commit)
(4)查看提交日志(log)
(5)添加文件至忽略列表
(6)分支
(7)解决冲突
4.2 Git 远程仓库
5. Git 在Idea中的使用
Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 [1] 也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。
在原项目的基础上进行迭代开发(升级),那么新开发的就相当于一个新的版本。举一个最简单的例子:毕业设计的时候,毕设论文都会进行大量的修改,而我们通常是在原论文(1.0)上修改后另存为一个word文档,那么新的论文文档就是一个新的版本(2.0),而Git 便可以进行记录,如果原论文(1.0)不小心删除了,那么通过Git就可以回溯到1.0版本。
https://git-scm.com/download Git下载网址
根据你的系统选择下载:
根据你的电脑位数选择:
下载后只需要一直点(安装路径可以更换到你想安装的地方)
双击下载的安装文件来安装Git。安装完成后在电脑桌面(也可以是其他目录)点击右键,如果能够看到如下两个菜单则说明Git安装成功。
安装完成后,还需要最后一步设置,在命令行输入:
$ git config --global user.name "Your Name"
$ git config --global user.email "[email protected]"
因为Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址。你也许会担心,如果有人故意冒充别人怎么办?这个不必担心,首先我们相信大家都是善良无知的群众,其次,真的有冒充的也是有办法可查的。
注意git config
命令的--global
参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。
查看配置信息
git config --global user.name
git config --global user.email
要使用Git对我们的代码进行版本控制,首先需要获得==本地仓库==;本地仓库你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。
1)在电脑的任意位置创建一个空目录(例如test)作为我们的本地Git仓库
2)进入这个目录中,点击右键打开Git bash窗口
3)执行命令git init
4)如果创建成功后可在文件夹下看到隐藏的.git目录。
瞬间Git就把仓库建好了,而且告诉你是一个空的仓库(empty Git repository),细心的读者可以发现当前目录下多了一个.git
的目录,这个目录是Git来跟踪管理版本库的,==没事千万不要手动修改这个目录里面的文件==,不然改乱了,就把Git仓库给破坏了 。
Git 使用围绕上面这个图,这个图一定要熟悉。
先讲解工作区与本地仓库的交互。
仓库中记录的是文件的修改记录。
工作区: 存储你的代码的。
暂存区: 它只是在内存中的一个空间。
git add (工作区 --> 暂存区)
git commit (暂存区 --> 本地仓库)
在工作去新建一个文件 test.txt,在控制台输入 git status 可以查看文件此时的状态
下面翻译为
还没有提交
无路径的文件:
(使用“git add…”来包含将要提交的内容)
用法没有添加任何提交,但未跟踪的文件存在(使用“git add”跟踪)
说明文件现在仅仅在工作区里面,并没有从工作区添加到暂存区
通过 git add 文件名 命令,把文件添加到了暂存区(我们不可见这一过程),此时再次查看文件状态,限免注解为
还没有提交
要提交的更改:
(使用"git rm——cached
…") 新文件:test.txt
令: 当我们需添加的文件过多时,使用 git add . (这里有一个点) ,可以一次性把所有文件添加到暂存区
通过 git commit -m '注释' 可以把文件从暂存区提交到本地仓库,此时文件会被正式接管。
注意:提交到本地仓库时,必须添加注释(可以了解到提交的是什么),否则会强制你添加注释,从而进去到linux状态让你进行输入。
命令形式:git log
--all 显示所有分支
--pretty=oneline 将提交信息显示为一行
--abbrev-commit 使得输出的commitId更简短
一般我们总会有些文件无需纳入Git 的管理,也不希望它们总出现在未跟踪文件列表。 通常都是些自动生成的文件,比如日志文件,或者编译过程中创建的临时文件等。 在这种情况下,我们可以在工作目录中创建一个名为 .gitignore 的文件(文件名称固定),列出要忽略的文件模式。
此时就会忽略 a.fpm 文件
几乎所有的版本控制系统都以某种形式支持分支。 使用分支意味着你可以把你的工作从开发主线上分离开来进行重大的Bug修改、开发新的功能,以免影响开发主线。
1)查看本地分支 命令:git branch
2)创建本地分支 命令:git checkout 分支名
3)切换分支 命令:git checkout 分支名
我们还可以直接切换到一个不存在的分支(创建并切换)
命令:git checkout -b 分支名
合并分支 :命令:git merge 分支名称
一个分支上的提交可以合并到另一个分支
此时需要和并分支,那么在bra1 提交的也会合并到 master
删除分支
不能删除当前分支,只能删除其他分支
git branch -d b1 删除分支时,需要做各种检查。 查看当前分支有没有没合并的内容
git branch -D b1 不做任何检查,强制删除
上面这些操作都是对本地仓库来说。
前面我们已经知道了Git中存在两种类型的仓库,即本地仓库和远程仓库。那么我们如何搭建Git远程仓库 呢?我们可以借助互联网上提供的一些代码托管服务来实现,其中比较常用的有GitHub、码云、GitLab等。
gitHub( 地址:https://github.com/ )是一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名gitHub
码云(地址: https://gitee.com/ )是国内的一个代码托管平台,由于服务器在国内,所以相比于 GitHub,码云速度会更快
GitLab (地址: https://about.gitlab.com/ )是一个用于仓库管理系统的开源项目,使用Git作 为代码管理工具,并在此基础上搭建起来的web服务,一般用于在企业、学校等内部网络搭建git私服。 安全性高 银行项目 16G以上
(1)注册码云( 注册 - Gitee.com )并创建远程仓库
仓库创建完成后可以看到仓库地址,并且下面有基本的使用说明
(2)配置公钥
在 git bash 中输入命令:ssh -keygen -t rsa
在c盘下会生成公钥
然后以记事本打开,复制所有内容,并添加到码云的ssh公钥上,这样就可以不需要密码也能进行访问了。
注意:如果想要访问别人的私人远程仓库,那么就需要仓库的主人加入你的公钥,这样你才能够对仓库进行修改等操作,如果想要更换访问仓库,之前加入你的公钥的人就需要把你的公钥删掉,这样你的公钥才能够被另一个人添加,总之,公钥除了自己,只能够给唯一的他人使用(别人使用了你的公钥,就代表同意你修改仓库)
(3) 把本地仓库的文件上传到码云上到仓库
本地仓库关联远程仓库地址:
git remote add 名称(默认为origin 可以随便起) 远程仓库的地址。(之后的提交就直接提交到这个仓库里面)
把本地仓库的代码推送到远程仓库
git push 名称 本地分支名 远程分支名 如果本地分支名和远程分支名相同可以只写一个。
(1)关联Git
(2)通过idea 创建本地仓库
(3)添加到暂存区以及提交到本地仓库
(4) 提交到远程仓库
注意:
开发步骤:---主分支上----子分支(按照功能)---->add .----commit --->切换主分支----合并分支内容---->拉取远程仓库的内容---推送