背景: MAC电脑,IDEA开发环境中集成git进行代码版本管理
1、安装git
(1)先安装Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
(2)使用Homebrew安装git
brew install git
如果你已经安装过了,可以通过下面的命令来升级
brew upgrade git
注意:使用brew install git的时候默认的git安装路径是: /usr/local/bin/git
(3)检查git是否安装成功
方法一,终端输入git,如果安装成功,则显示git的用法信息:
git
方法二,终端输入 git --version,如果安装成功,则显示版本:
git --version
2、配置git仓库
下载安装完git后,如果你输入 git status ,即使切换到git的安装路径下/usr/local/bin/git 输入 git status,得到的依然是如下的错误提示:
所以,此刻脑海中是不是有很多的疑问?
并不是安装完git后就能直接使用了?什么是git仓库?为什么要配置git 仓库?
当然要配置下账号密码,git才能将代码更新到远程的代码库了。
从远程仓库拉取代码当然也是需要账号密码的,不然岂不是所有人都能访问企业代码,泄漏了?
所以,这一步就是为了配置本地的git和远程的代码库之间的连接密码和账号。
我们应该怎么配置git 使之能与远程的代码库链接呢?
当你注册并登陆远程代码库如gitHub的时候,你发现在“settings”设置菜单中有个SSH Keys选项是允许你建立电脑和GitHub的安全连接的。这就是了。
|
从这里的需求可以看到你需要创建一个SSH keys,并把它填入到GitHub远程代码库中。那我们就一步步来做吧。
(1)本地的git配置全局变量username、email,这是访问远程github代码仓库用的,每次本地commit提交代码的时候都会用到。
git config --global user.name "your_gitHub_user_name"
git config --global user.email "your_gitHub_register_email"
(2)创建SSH Key
ssh-keygen -t rsa -C "Your_gitHub_register_email"
你会看到下面的提示:输入一个文件来保存SSH key。当然你可以不输入,直接按回车键,使用默认的文件来存储。
进入下一步后,如果你之前生成过SSH Key并且也是保存在同样的文件里,它会询问你是否Overwrite 覆盖写入,输入y表示覆盖写入,输入n表示不覆盖,即退出操作。
之后它还会询问你输入密码,如果不输入默认密码是空。
(3)查看保存SSH Key的文件
这个文件就是上步(2)中的文件,如果你没有重新命名文件,而是使用了默认的文件,那么文件名就是 ./ssh/id_rsa.pub
你可以通过路径去看看./ssh/ 下面都有什么文件。
注意:这里的id_rsa文件存放的私有密钥Key。 文件 id_rsa.pub 存放的才是公有密钥Key,这也是我们接下来要上传到gitHub的,不要弄混了。
我们来查看下id_rsa.pub 文件
open /Users/gao**/.ssh/id_rsa.pub
或者
cat /Users/gao**/.ssh/id_rsa.pub
这两种方式来查看文件都可以,只不过文件内容展现的方式不同而已,open会打开一个第三方的文件来显示文件内容,cat是直接将文件内容显示在屏幕上。
(4)复制SSH key文件的内容到 gitHub中
Title给这个SSH Key命名,方便后续查看。Key的地方就是复制(3)中的公有密钥。
(5)登录验证(注意:ssh -T git@后面的是你要连接的代码仓库地址)
ssh -T git@${your_github_com}
如果配置都是成功的,那么它会显示“Welcome to ${your_git_hub}”
(6)clone一个工程到本地
你会注意到远程仓库中你有权限的分支基本都会允许你clone,比如master分支、develop分支等。
但是并不是所有的分支你都有权限提交合并你写的代码,自然是处于对原有代码的稳定性的保护。
只要你配置成功了SSH Key,那么都会允许你使用clone with SSH 的方法进行代码的克隆下载。
git clone git@${yout.git.com}:${your_code_path}.git
(7)使用git管理版本
克隆完代码后,cd 进入代码路径下,此时输入 git status
git status
这时候你发现显示完全不同了,它多了个绿色标记的分支,说明你现在在本地的develop分支上,之后修改的代码就可以通过git版本管理命令进行提交了。
注意:首先要确保你的代码是使用git clone 从远程代码库中下载的,其次要保证你已经切到了下载的代码目录下,这样才会成功启动git status,否则都不会成功的。
至此,git的安装、配置流程已经全部结束了。同时,你也已经学会了clone一份代码到本地,那么接下来要学习如果使用git来添加、提交脚本,以及合并分支。
3、使用git来管理代码版本
现在你要开发一些代码来满足业务需求。
首先你需要先从远程代码库中clone下来已有的开发代码,看看代码是怎样的,你新开发的代码应该放在什么路径下合适。
这时候你当然不能直接在master分支上进行开发,(当然一般也不会允许你这么做的),那么我clone下来了代码,又不能直接新增脚本直接开发代码,我该怎么做呢?
当然是新建一个分支进行代码开发,开发完了之后再请求将分支上的代码合并到master分支就好了。
所以,我们在开发阶段,实际上是将 本地代码 --添加/提交/push-->开发分支,这个分支上新开发的代码并没有提交到master分支。
(1)新建分支
git branch develop
注意:新建分支后,分支上的代码部分是跟主分支的一样的,并没有不同。直到你在新建的分支上提交了新的代码。
(2)切换到其他分支上
git checkout develop
当然你也可以不使用命令行,而是通过IDEA中的界面进行交互操作,效果是一样的。
(3)在开发分支上进行代码开发
(4)开发分支上代码的add 、commit 、push 、pull,即添加、提交、上传、下拉
你也可以通过命令行来实现代码的添加、提交、上传、下拉,但我更喜欢直接使用IDEA中界面上的按钮来实现。
一键三连:add(IDEA中在你新建脚本的时候就提示你添加了),commit, push
(5)开发分支上提交了代码后,现在来比较下开发分支和主分支有什么不同。
很明显,新开发的代码只在开发分支上有,而主分支并没有受到影响,没有这个脚本。
这样可以保证线上脚本的正常运行,而不会受到本地开发代码的影响。
|
(6)合并开发分支上的代码到主分支中
现在你已经在本地开发完了代码,并且也已经自测完成了,那么我该怎么把开发分支上新开发的代码合并到master分支呢?
当然是通过GitHub或者你所在的远程代码仓库界面上的 merge request(合并请求)来实现代码合并了。
一般合并请求之前你先检查比较下代码版本,确认无误后再请求。
通常允许合并开发分支到master分支的权限都是掌握在部门或团队大佬手里。
在GitHub上的合并开发分支到主分支大概是这样的,这都取决于你使用的代码仓库。但一般都是 merge request 合并请求,所以不用担心找不到入口。
至此,已经完成了MAC从0到1的安装和使用git管理代码版本的整个流程。掌握了这些就基本能自主进行代码开发和版本升级管理了。
再高级和高性能的使用方法可以在此基础上进行拓展。