在软件开发过程中,一般会用SVN或者Git进行版本控制。Git是目前世界上最先进的分布式版本控制系统。
版本控制的意义在于:对于开发来讲,相当于代码管理。每当代码有了修改,版本库都会有明确的提交记录,可以从代码库里看到整个项目的代码是如何一步步演化的,并且随时可以回溯到某一个节点时期的代码。另外,除了管理代码以外,同样可以针对文件的迭代进行版本控制。
Git搭建
首先,可以在命令行输入git或者git version,看看系统有没有安装Git.如果提示“找不到git命令”,则代表电脑上还没有安装git。
- Git下载
https://git-scm.com/downloads下载适用于电脑系统的版本。下载之后进行安装,安装完成后启动再次查看git version,即可看到已安装成功。
- Git配置
Git安装之后需要进行一些基本信息配置,git config --global 参数表示这台机器上所有的git仓库都会使用这个配置
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
注意:该配置会在github主页上显示谁提交了该文件
同时可以使用git config --list指令查看Git的配置信息
git config --list
- 生成密钥
Git关联远端仓库时候需要提供公钥,本地保存私钥,每次与远端仓库交互时候,远端仓库会用公钥来验证交互者身份。使用以下指令生成密钥。
ssh-keygen -t rsa -C "your_email@youremail.com"
生成密钥后,在本地的/Users/当前电脑用户/.ssh目录下会生成两个文件id_rsa、id_rsa.pub,id_rsa文件保存的是私钥,保存于本地,id_rsa.pub文件保存的是公钥
注意:储存key信息的文件id_rsd和id_rsa.pub是可以用户自行命名的,比如下图,我自行命名的名字为123456,则生成的公钥文件名为123456.pub
cat id_rsa.pub
生生成的id_rsa.pub文件打开,拷贝其中的公钥内容。
alice$ git config --global sweet@gmail.com
alice$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/alice/.ssh/id_rsa):
/Users/alice/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/alice/.ssh/id_rsa.
Your public key has been saved in /Users/alice/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:ZezfjndNvRQvshntQTEExBn2qvA alice@alicedeMacBook-Pro.local
The key's randomart image is:
+---[RSA 2048]----+
| o*B*o|
| . .oooo|
| + o.oo|
| + . ++=|
| S.. * .B|
| o.=.*.=||
| ooO.o|
| .+oo |
+----[SHA256]-----+
alice$ cd .ssh/id_rsa
-bash: cd: .ssh/id_rsa: Not a directory
alice$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQAmyqxWFbjIQLdQcrVJYD29U4jq3XmFC1pS01v0vAl9oK0zsP6+q/SFZriTF22jfGDSL2nVXYkUp72XP88iYT04RbR alice@alicedeMacBook-Pro.local
拷贝从ssh开头的内容到邮箱名称。
- 远端仓库添加密钥
github上进行粘贴,即可创建和github的ssh链接。
以GitHub为例子,向远端仓库添加公钥,上面已经获取到了公钥,只需要将公钥添加到远端仓库就可以了。在个人设置页面,左边选中SSH and GPG keys,在右边添加公钥,title是key的名称,可以随便取,可更改,key是上面我们获取到的公钥,填写完毕后点击add SSH key按钮,这样远端就添加到了密钥。
Gitlab:
Git使用
- 直接拉取远程仓库
git clone <git url>
远程git的url获取如图:
- 本地仓库定向到远程
如果本地有代码,需要托管到远程,可以终端使用remote命令
git remote add origin https://gitlab.com/sweet/practice.git # 托管到远程仓库
git push origin alice # 推送到远程仓库alice分支
- git 常用命令
见这篇博文:https://blog.youkuaiyun.com/alice_tl/article/details/78388073