一、创建远程仓库并和本地作关联
在本地打开git bash,然后输入命令ssh-keygen -t rsa:
$ ssh-keygen -t rsa -C "akipa11@163.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/Jin/.ssh/id_rsa):
Created directory '/c/Users/Jin/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/Jin/.ssh/id_rsa.
Your public key has been saved in /c/Users/Jin/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:54SycobqhLRV/ElJ2eulF40hv1wANdsjE40KFPlwlNY akipa11@163.com
The key's randomart image is:
+---[RSA 2048]----+
| .+*o=+o |
| . .=.* E=. |
| o o* =+=o |
| . o .= =oo. |
| . . .oS * + |
|..o . o * + |
|... o + o |
| . . + |
| .o |
+----[SHA256]-----+
此时会在本地目录生成两个文件,id_rsa(私钥)和id_rsa.pub(公钥)
$ cd ~/.ssh
Jin@Jin-PC MINGW64 ~/.ssh
$ ls
id_rsa id_rsa.pub
我们把公钥文件id_rsa.pub的内容复制,然后打开你的Github网站,在右上角点击头像,然后选择“Settings”,再选择“SSH and GPG keys”,把刚才复制的公钥内容粘贴到“Key”里面,这样我们就可以进行远程仓库操作了。
在Github上新建一个名为learn_git的仓库:
此时我们就可以从这个仓库克隆出新的仓库,也可以把一个已有的本地仓库与之关联,然后,把本地仓库的内容推送到GitHub仓库。
根据Github的提示,我们在本地的Git bash输入以下命令:
git remote add origin https://github.com/zhangjin0110/learn_git.git
然后就就可以把本地库的所有内容推送到远程库上了:
$ git push -u origin master
Counting objects: 10, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (7/7), done.
Writing objects: 100% (10/10), 884 bytes | 126.00 KiB/s, done.
Total 10 (delta 0), reused 0 (delta 0)
To https://github.com/zhangjin0110/learn_git.git
* [new branch] master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.
把本地库的内容推送到远程,用git push命令,实际上是把当前分支master推送到远程。
由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
推送成功后,就可以在Github上看到跟本地仓库一样的内容了。
只要本地的仓库作了修改,都可以用命令git push origan master推送到Github的远程仓库上去。
二、从远程仓库克隆到本地
在Github上新建一个名为use_git的仓库:
然后在本地的Git bash中输入以下命令:
$ git clone git@github.com:zhangjin0110/use_git.git
Cloning into 'use_git'...
The authenticity of host 'github.com (52.74.223.119)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'github.com,52.74.223.119' (RSA) to the list of known hosts.
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (3/3), done.
再查看本地是否已经克隆成功:
$ ls
id_rsa id_rsa.pub known_hosts use_git/
Jin@Jin-PC MINGW64 ~/.ssh
$ cd use_git/
Jin@Jin-PC MINGW64 ~/.ssh/use_git (master)
$ ls
README.md
Jin@Jin-PC MINGW64 ~/.ssh/use_git (master)
$ cat README.md
# use_git
可以看到,我们已经成功把Github上的use_git仓库克隆到本地了。