前言
该文档包含 windows/mac 上安装 git 图解,配置公钥/私钥,创建本地版本库,本地版本 库与远端关联等。
安装git
windows 上安装 git
1.下载Git 安装包(约32.8M)
2.选择好安装位置,按默认选项安装,一直点 next 直到 finished 即可。
3.安装完成后在开始菜单下有 git 文件夹 点击下面的 git bash,如图所示:mac 上安装 git
在mac的终端上,输入git会提示安装git软件,确认安装。
安装完成后打开终端,使用git --version
或者which git
命令查看安装版本,有就是安装成功了。
个人信息设置和相关配置
1.安装完成后需进行个人信息设置,输入完成后,回车不显示任何信息。命令行如下:
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
2.还需进行相关基本配置,命令行如下所示:
$ git config --global gui.encoding utf-8
$ git config --global i18n.commitencoding utf-8
$ git config --global i18n.logoutputencoding gbk
生成公钥/秘钥
备注:如果不使用ssh,可跳过此步骤
1.查看是否已经有了ssh密钥:cd ~/.ssh 如果没有密钥则不会有此文件夹,有则备份删除。
2.生成密钥,使用如下命令行:
$ ssh-keygen -t rsa -C “youremail@163.com”
3.此处可以不要密码,连按三个回车,如下图所示:
4.至此,得到了两个文件:id_rsa和id_rsa.pub。
5.现在你可以看到,在自己的目录下,有一个.ssh目录,说明成功了。
6.添加SSH公钥到github(如果公司用的是gitlab,界面可能与下图有所区别,只要记得找相对应的按钮和位置就可以了)
-
打开github 点击右上角选择settings,如下图所示:
-
左侧菜单列表里选择SSH and GPG keys,如下图所示:
-
选择添加ssh key,如图所示
- 打开生成的id_rsa.pub文件,将里面的内容复制到ssh key 的key 输入框内,如下两图所示:
-
在此输入你github的账号和密码,如下图所示:
7.测试ssh key 是否配置成功
- 输入如下所示命令行
ssh -T git@github.com
-
回车,选择yes,如下图所示:
- 如果看到Hi后面是你的用户名,就说明配置成功。
-
另外,密钥/公钥生成成功后,你会收到一封邮件。
创建本地版本库
- 先用$cd 命令选择一个合适的位置,如下图所示:
$cd
- 用$mkdir 创建一个代码库
$mkdir learngit
- 这时在你的本地文件夹的这个位置就能看到你用mkdir命令创建的代码库名字。
- 确定位于当前代码库的位置并查看当前位置
$cd learngit
$pwd
- 用以下命令初始化这个代码库
$git init
然后你的本地该位置就会创建一个代码库,而且告诉你是一个空的仓库(empty Git repository)。当前目录下多了一个.git的目录,这个目录是Git来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给破坏了。也不一定必须在空目录下创建Git仓库,选择一个已经有东西的目录也是可以的。如果你没有看到.git目录,那是因为这个目录默认是隐藏的,用ls -ah命令就可以看见。
现在我们在名为learngit代码库下用notepad++来编写一个readme.txt文件 注意先按照下图将格式转化为utf-8 一般情况下默认就是这个。
- 使用如下命令把文件添加到仓库,注意,可反复多次使用,添加多个文件;
$git add <file>
- 使用如下命令,把文件提交到仓库完成。
$git commit -m “add <file>”
⚠️注意:”add <file>”引号内文字为提交的文件报文,千万不能省 略!!!
- 完成后如下图所示:
本地版本库与远程关联
- github上创建一个版本库,如下图所示;
⚠️注意:空格无效,最好英文
假设我创建了一个名为learngit的仓库,目前,在GitHub上的这个learngit仓库还是空的,GitHub告诉我们,可以从这个仓库克隆出新的仓库,也可以把一个已有的本地仓库与之关联,然后,把本地仓库的内容推送到GitHub仓库。
复制代码库在远端的位置,如下图所示(使用ssh):
- 我们根据GitHub的提示,在本地的learngit仓库下运行如下命令:
$ git remote add origin git@github.com:RRRookie/learngit.git
⚠️注意:把上面的RRRookie替换成你自己的GitHub账户名,否则,你在本地关联的就是我的远程库,关联没有问题,但是你以后推送是推不上去的,因为你的SSH Key公钥不在我的账户列表中。添加后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。
- 提交到远程仓库
$ git push -u origin master
- 关于git push origin master和git push
- master是主分支,还可以建一些其他的分支用于开发。
- git push origin < branch-Name >的意思就是上传本地当前分支代码到名为branch-Name的分支;git push是上传本地所有分支代码到远程对应的分支上。
备注
注册公司的gitLab时邮件有可能出现在垃圾邮件里,成功之后如下图所示: