首先还是简单介绍一下吧:
它是一种分布式的版本控制系统,目前最流行的。前提条件首先安装好git工具。
1、clone远程仓库有两种方式:SSH 和HTTPS.
就是两种不同的通信协议,原理性的东西不多说了,也不是很懂。
SSH 方式: 这个需要事先在git服务器上获得你当前电脑设备上的 SSH公钥的认证才行正常使用。
(一)、默认情况下,用户的 SSH 密钥存储在其~/.ssh目录下。怎么看呢?
默认已经安装好了git, 并且右键菜单里有Git Bash Here这个快捷启动命令行的方式。无论在任何地方打开这个命令行都行。输入:cd ~/.ssh ,如果没有这个目录的话就会有提示,如果有的话,再输入:ls 就可以看到有id_rsa 和id_rsa.pub这个两项了,一个是私钥一个是公钥(.pub后缀的),这个.ssh目录的实际位置大多(默认)在:C:\Users\Administrator\.ssh 。
(二)、如果该目录还没有这对密钥,下面就手动创建一个:
同样也是在git bash命令行窗口里输入:ssh-keygen –t rsa –C “xxxxxxxxx@qq.com” ,当然后面的邮箱地址可以是你任何一个git服务器的帐号邮箱,一般可以是github的。注意,这里的-C一定是要大写的。之后会提示要你输入密码:直接3个回车就行了,表示密码为空。完成后就可以用上面的命令或直接找到.ssh目录的位置就会看到有id_rsa和id_rsa.pub这两个文件了。
(三)、在git服务器上添加你本机生成的ssh公钥:
这里以github为例,找到github官网里的Settings -> SSH keys。用文本编辑器打开id_rsa.pub文件,复制里面所有。然后在github上添加一个SSH key, Title随便填,好记容易区分就行。然后把本机复制的公钥粘贴到key内容区就行了。
上面二、三步骤完成后,就可以功过ssh方式clone仓库并且可以直接push了。
HTTPS的方式:
这种方式,使用起来简单,但是在你每次push的时候都会提示你输入你在远程git服务器上的帐号和密码。当然也可以通过设置省去每次都输入帐号密码的麻烦:
同样git bash下输入:touch ~/.git-credentials 。这样会创建一个.git-credentials文件。
默认也是在C:\Users\Administrator\目录下。找到并用文本编辑器打开添加一行:https://{username}:{passwd}@github.com 。username和password记得替换成你的真实的帐号密码。@符号后面接的是你git服务器的地址,如果你公司有自己的git服务器,记得更换。然后再回到git bash命令行输入:git config --global credential.helper store 。这样就好了。
2、获得git仓库的两种方式;
获取Git仓库,也有两种方式,一种是直接在本地初始化然后添加到远程git服务器,另一种是从服务器端clone下来;
(一)、本地初始化一个仓库,并添加到远程git服务器:
先本地新建一个文件夹,可事先放一些文件和项目,然后在该目录下用git bash命令行工具输入:git init命令,这样就初始化了一个本地git 仓库了。
*重点:第二步是把这个git仓库和一个已有的远程git仓库(可以github上的,可以是已有内容的也可以是空的)关联起来,在git bash里输入命令:
git remote add origin git@github.com:github帐号名/仓库名.git 。注意:这里的仓库名最好和上面那个本地仓库的文件夹名同名。
然后就可以在用git status命令查看状态,可以看到原来本地仓库里有哪些内容还没有提交到远程github的,最后就可以用相关命令(git add和git commit等)提交了。
如果远程仓库是个空的仓库,什么都没有则提交时需用命令:git push --set-upstream origin master 。
(二)、直接从服务器端仓库clone下来(这种最常用)
从远程克隆一份到本地可以通过git clone;在你要存放的位置打开git bash输入:
git clone git@github.com:github帐号名/仓库名.git 。注意:这种方式不用事先建立一个和仓库名同名的空的文件夹,只要定位到想存放的文件目录下就行了,clone的时候会自动建立该仓库同名的文件夹。
3、To be continue......