这里所说的上传代码指的是获取ssh key等所有的工作已经完成
打开要上传代码的目录,首先运行一下命令,看ssh是否能成功连接:
$ssh -T git@github.com
如果出现以下字符串
“xxxxx’ve successfully authenticated, but GitHub does not provide shell access ”。(其中的xxx表示你的用户名)
这就表示已经成功链接,接下来就可以上传你的本地代码至Github上
首先在github上建立一个仓库:
接下来上传本地代码至Github:
$git init #在你要上传代码的目录下执行该命令
$git add . #如果是.表示上传全部目录下的文件,可以是某个文件
$git commit -m 'Practice to use shell to program' #引号中的字符串可以任意长,即是你对本次提交的说明
$git remote add origin git@github.com:Corrine-Chen/my_linux_code.git #其中的my_linux_code.git是我自己建立的,你要替换成你自己建立的文件
$git push origin master -f(或者是$git push -u origin master)
完成结果如下图:
回来到你的github上就会发现你的代码已经上传至github:
遇到的问题以及解决的方法
- 在最后一步git push origin master -f 的时候出现以下报错:
尝试了用命令ssh -T git@github.com,发现可以链接,网上百度有一种说法是防防火墙的问题,但是执行命令service iptable stop后,运行git push origin master -f 依然会出现此报错,所以就试着运行一下命令:
cd .git //注意:.git是隐藏文件,使用ls -a可以查看移仓文件。
vim config
打开config文件以后,发现自己的url写错了,原因是第一次git remote add origin的时候打错了从而导致此文件中是错的,修改完成以后,再执行,就可以上传代码了。
怎样将github上的代码同步至本地
如果本地没有仓库那就
git clone git://git@github.com:Corrine-Chen/my_linux_code.git
如果已经有了,那就这两个命令的其中选一个,但是要注意:fetch 命令只是将远端的数据拉到本地仓库,并不自动合并到当前工作分支,只有当你确实准备好了,才能手工合并,pull 命令自动抓取数据下来,然后将远端分支自动合并到本地仓库中当前分支
git fetch origin
git pull