记录一下用Git初次配置远端仓库的学习过程。
假设你已经下载好了git,同时在github上也有了一个账号。
0.配置SSH
我们打开git bash,然后输入
$ ssh-keygen -t rsa -C "[email protected]"
这里的[email protected] 是你在github上注册的那个邮箱。直接点回车,会提示将要在默认文件id_rsa.pub上生成SSH key。然后系统会要求输入密码,直接按回车表示不设密码;重复确认密码时同样也是直接回车,之后就提示SSH key已经成功生成。
然后进入提示的地址下查看id_rsa文件, 文件的对应路径为C:\Users\.ssh\id_rsa.pub,其中Users是你电脑的用户名。打开id_rsa.pub,复制里面的key——里面的key是随机的字符数字组合,末尾提示了你的邮箱信息。
回到github网站,进入Account Settings,左边菜单选择SSH Keys。然后添加一个新的SSH Key,title自定义即可,粘贴复制刚才的key内容,完成github端SSH的配置。
检验下是否已经完成配置,在git bash中输入
$ ssh -T [email protected]
看到信息提示You’ve successfully authenticated, but GitHub does not provide shell access 。这就表示已成功连上github。
1.联动github与本地git客户端
1.1 clone远端的github仓库
第一种方式是clone在github上刚刚建好的仓库。于是首先需要在github上创建一个仓库,并创建相应README.md文件,比如在其中填入“My test”。创建好后,大概是这个样子:
然后我们在本地新建一个空文件夹,右键选择“git bash here”。比如我在桌面新建了一个test文件夹,然后选择
$ git clone [email protected]:yourName/yourRepo.git
这里的yourName和yourRepo输入的是你在github上的用户名和你新建的仓库,比如我的仓库名就叫test。完成clone后,切换到test目录,用ls命令查看文件,就可以发现github端的仓库文件已经被克隆到了本地。
|
|
1.2 新建本地的git仓库
比如我新建了一个空的MyRepo文件夹,并且在文件夹中自建了一个README.md文件。右键选择git bash这个文件夹,输入
$ git init
在文件夹下就会新建一个隐藏的.git文件夹。接着输入:
$ git remote add origin [email protected]:yourName/yourRepo.git
这里的yourName和yourRepo是你在github上的用户名和你新建的仓库(我在这个新建的仓库里没放README.md文件),我现在的仓库名叫MyRepo。这表示给本地git的仓库配置上了远端的在github上的仓库地址。
输入
$ git remote -v
可以查看此时的remote端的地址,或者进入.git文件夹下选择config文件也能进行查看。
最后是将本地的README.md文件上传远端仓库,此时就能完成远端仓库的联动建立。
依次输入git add, git commit 和 git push,即
$ git add README.md
$ git commit -m "my repo"
$ git push -u origin master
这里的master是本地创建的branch的名字(即截图中MyRepo后面的那串蓝色字),这也将是github仓库中创建的branch的名字。我的结果图如下:
2.上传代码
联动github与本地git客户端后,我们就能正常地在本地开发并更新代码到云端。比如我现在本地MyRepo文件夹下创建了一个tree.html文件,我想要把它上传到github仓库。那么,与添加README.md文件类似。同样是git add, git commit, 和git push三板斧。
值得说明是,git add是把文件添加到文件修改添加到暂存区,这也意味着可以对多个文件进行git add,然后批量进行commit提高效率。 而git commit是提交更改到版本库,实际上就是把暂存区的所有内容一次性提交到当前分支,在这里git为我们自动创建了唯一的master分支。最后,git push才完成了把我们的本地仓库信息上传到云端的备份同步。