初学github想要把自己做过的online judge题解上传到github上去。有两种方法,
一,直接在github网页上完成创建代码文件并编写,比较容易。
二,是本地编写完代码,放到本地仓库,然后再同步到github远程仓库,想着以后做稍大的项目可能会本地测试修改,然后再上传,于是采用了第二种方式。但第一次配置流程可能有点麻烦,还有一些注意事项,因此在这里总结一下。
主要流程如下:
①注册github账号,下载git客户端
②创建本地仓库(其实就是个文件夹)
③使用ssh密钥连接本地仓库和github远程仓库
④将本地项目上传到github远程项目
第一步,就不用介绍了,直接给注册地址: 点击打开链接 ,客户端下载地址: 点击打开链接
第二步,创建本地仓库
两种方法,一是自己创建文件夹,然后添加至git本地仓库。二是直接使用git命令创建。
第一种,首先在自己想要放项目的地方创建文件夹(已有的忽略这步),
然后打开git bash客户端
在该文件夹下使用git命令:
git init .初始化一个本地仓库。
之后能在该文件夹下看到git仓库管理文件.git(隐藏文件)
接下来我们在该文件夹下创建一个test.txt,
现在test文件只是创建好了,还没有添加到git本地仓库,接下来执行git命令:
git add .(add后面空一格)将整个文件夹添加到本地仓库
如果只想添加单个文件使用命令:
git add 文件名 ,这种方式 ,例如:git add test.txt.
此时我们查看下文件是否被添加入本地仓库,使用命令:
git status
可以看到test.txt已添加到git中来.但提示你还没有commit ,接下来执行命令:
git commit -m"First commit" ,将文件提交本地库中,后面的引号内是注释 ,用来标记文件的使用或修改情况等,也可以不加,不过最好加一些注释 ,否则会报错.执行后如下,
现在test文件已经添加到git本地仓库中来了.
第三步,使用ssh密钥连接本地仓库和github远程仓库
git本地文件和远程仓库之间的同步,使用的是SSH加密,所以如果是首次同步本地文件到github,此时是没有ssh加密文件的,需要我们手动添加,首先使用命令:
执行后一路回车,可以在自己的用户名下找到密钥文件
接下来打开github的个人中心,找到
找到
然后把刚才的公开密钥:id_rsa.pub中的代码复制到方框中
接下来在github上创建一个新项目,
完成后复制该项目的SSH地址
就把本地git仓库和github远程仓库关联了起来,接下来就能上传本地文件了.
第五步,将本地项目上传到github远程仓库
①如果是按照上面的操作,那么远程仓库是空的且为第一次上传,使用命令:
git push -u origin master,进行上传操作完成同步。如果不是第一次则使用命令:
git push origin master
, -u 仅在第一次上传时加上,以后都不需要了。将修改后的项目上传到github远程仓库。
②如果你的远程仓库不是空的(初始化了一个readme.md文件),而本地仓库没有则必须要先把远程文件同步到本地,使用命令:
git pull --rebase origin master
,然后再上传(或者直接将远程仓库克隆下来,往里面放文件也行,使用命令:git clone [email protected]:virsing/Leetcode.git),在使用推送命令:
git push origin master .完成同步。结果如下
至此就把本地文件同步到github远程仓库了.
一定要注意,如果你在创建github仓库时,初始化了一个readme.md文件,远程仓库不是空的,则需要先将远程仓库与本地仓库同步,使用命令:
git pull --rebase origin master.将远程文件拉回本地仓库,然后再执行:git push origin master,就能成功了.
总结:其实只需要进行下面几步就能把本地项目上传到Github
1、在本地创建一个版本库(即文件夹),通过git init把它变成Git仓库;
2、把项目复制到这个文件夹里面,再通过git add .把项目添加到仓库;
3、再通过git commit -m "注释内容"把项目提交到仓库;
4、在Github上设置好SSH密钥后,新建一个远程仓库,通过git remote add origin https://github.com/guyibang/TEST2.git将本地仓库和远程仓库进行关联;
5、最后通过git push -u origin master把本地仓库的项目推送到远程仓库(也就是Github)上;(若新建远程仓库的时候自动创建了README文件会报错,解决办法看上面)。
参考文章: 点击打开链接