怎样把本地工程上传到github代码上传github

十分钟搞定上传本地项目到github - 推酷
十分钟搞定上传本地项目到github
上注册并登陆自己的账号,进入如下页面
接着会来到这
然后会收到一封github发的邮件,进入邮箱验证,初步完成.
我们都知道 github上不是随便都能传代码上去的,而是通过一种网络协议——SSH来授权的,那么什么是SSH,这里简单说一下,SSH是一种网络协议,用于计算机之间的加密登录。目前是每一台 Linux 电脑的标准配置。而大多数 Git 服务器都会选择使用 SSH 公钥来进行授权,所以想要在 GitHub 提交代码的第一步就是要先添加 SSH key 配置。接下来进行第2步:
二、 配置SSH
打开终端,直接输入命令ssh查看(一般Mac都是默认安装了 SSH的),如下图
2.输入命令ssh-keygen -t rsa&指定 rsa 算法生成密钥,接着连续三个回车键(不需要输入密码),然后就会生成两个文件 id_rsa 和 id_rsa.pub ,而 id_rsa 是密钥,id_rsa.pub 就是公钥。这两文件默
认在~/.ssh下生成,可在Finder中control+command+G前往(终端不要关闭,下面还要用)
3.接着添加ssh,我们先回到github上,点击设置
进入设置页面 点击 SSH and GPG keys ,再点击 New SSH key ,如下图,其中Title不用填,我们只需填Key里的部分(下面会说如何生成Key里所需要的东西)
4.生成Key里所需要的东西
在终端继续输入命令 cd ~/.ssh
cat id_rsa.pub&
然后在将终端输出的信息复制到Key中,最后直接点击Add SSH key完成SSH配置,这样 你这台设备就有权向GitHub上传代码了
三、接下来是提交代码时间
这里要创建两个库,远程库和本地库 ,先建立远程库,
1. & 点击登陆后页面上绿色按钮 New repository或者如下图的New repository新建一个远程仓库(remote repository)
点击后会到如下页面,要填三个地方
Repository name 库名( 最好用英文)
Description 描述(可不填)
Initialize this repository with a README 前面打?
最后点击Create repository生成远程仓库
2 开始建立本地库,在终端继续输入
1.cd到目标文件夹。
2. git init (在本机上想要创建一个新的git仓库)
3.git add -A&
4. git remote add origin xxxxxxxxx xxxxxx 就是你仓库的地址,具体的地址可以去Github上copy。关联远程仓库。如下图获取仓库地址(选中部分)
5.git commit -m “firstCommit”
6. git pull --rebase origin master 更新远程更新到本地:
推送本地更新到远程:
7.git push origin master(git push -u origin master) 将本地repo于远程的origin的repo合并,第一次用-u,系统要求输入账号密码
8. git pull (上传add的代码)
9.去Github上面检查代码,已经上传成功。
已发表评论数()
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
主题不准确
没有分页内容
图片无法显示
视频无法显示
与原文不一致github本地如何上传代码
注册GitHub后你就会有0.3G的免费空间,不过只能创建公开项目,这也满足代码分享的目的,我最喜欢的倒是它的代码展示方式,可以直接浏览你的代码,代码是经过高亮、添加行号处理过的,十分漂亮,体验一流,比如这个Webpy托管的地方。而作为想要了解你代码的人,可以选择直接在线浏览自己感兴趣的,也可以直接下载压缩包,或者直接使用Git
clone到本地。
因为GitHub是基于Git版本控制系统,所以你上传修改代码什么的,都需要使用Git工具。我这里主要是用来分享和展示代码,所以不想在版本控制方面做过多的阐述,下面就简单讲解一下怎么在GitHub上新建一个项目,还有把自己的代码传上去。下面的前提是你已经注册了GitHub和下载安装了Git--Git下载、Windows版本下载。
上传分享代码 1.在GitHub上建立项目 登录GitHub后,你可以在右边靠中那里找到一个按钮“New
Repository”,点击过后,填入项目名称、说明和网址过后就可以创建了,然后会出现一个提示页面,记下类似:XXX/XXX.git的地址,这个就是你这个项目的地址了。
2.配置Git以及上传代码 安装Git成功后,如果是Windows下,选择Git
Bash,在命令行中完成一切,可能开始有点麻烦,不过就那几条命令行,用几次就记住啦。首先初始设置Git: 1 git config
--global user.name "Your Real Name" 2 git config --global
user.email you@email.address
然后开始进行最麻烦的一步了,你需要上传文件到GitHub的Git系统上,得需要一个SSH密匙来认证,下面就开始生成密钥和提交密钥。打开Git
Bash,创建SSH key: 1 ssh-keygen -C 'your@email.address' -t rsa
然后要你输入SSH密匙的存放位置,可以不管,直接回车使用默认路径。再输入你想要的密码,SSH
key就生成了。现在你需要将这个Key提交到GitHub,首先打开Key保存的位置,里面会有三个文件,找到id_rsa.pub,用文本编辑器打开,复制里面的全部字符。到GitHub,在右上方工具栏里找到Account
Settings。在这个页面上有一个SSH Public Keys标签,选择Add another public
key。Title可以随便填一个,Key就粘贴刚才的字符,提交。
完成这些工作后,就可以上传自己的代码了。找到自己要分享上传的代码文件夹,右击选择Git Bash,或者在Git
Bash中进入这个文件夹。建立一个仓库: 1 git init 选择要添加进仓库的文件: 1 git add .
一般如果你想分享这个文件夹里的所有代码,就在
add后面加“.”,上面的例子就是这样,如果传指定的,只需要把“.”改为文件名即可,现在只是选择了要加入仓库的文件,下面才是添加进入仓库:
1 git commit -m 'Test'
-m后面跟一个参数,表示说明,将代码提交到GitHub后,将会在代码文件信息上显示这个说明,如下图标记的地方。
搞了这么久,现在才开始把本地仓库上传到GitHub了,下面两行命令搞定问题: 1 2 git remote add origin
:XXX/XXX.git 3 git push -u origin master
这个:XXX/XXX.git就是上面创建项目是生成的地址。现在打开你的项目网址,你就可以发现你的代码已经展示出来了。如果你要更新代码的话,就重复上面的吧。
如果提交了敏感信息,比如代码中设置的自己的密码什么的忘删除就上传上去了怎么办?重新修改过后上传依然有历史记录,而使用Git删除历史记录貌似很麻烦,于是就采用删除项目吧,删除了再重新上传。删除项目需要在GitHub网站上右上方找到admin按钮,进去后右边最下面有个删除的按钮,这样就可以删除了。
一些可能遇到的问题解决: 如果输入$ git remote add origin
:djqiang(github帐号名)/gitdemo(项目名).git 提示出错信息:fatal:
remote origin already exists. 解决办法如下: 1、先输入$ git remote rm origin
2、再输入$ git remote add origin :djqiang/gitdemo.git
就不会报错了! 3、如果输入$ git remote rm origin 还是报错的话,error: Could not remove
config section ‘remote.origin’. 我们需要修改gitconfig文件的内容
4、找到你的github的安装路径,我的是C:\Users\ASUS\AppData\Local\GitHub\PortableGit_ca477551eeb4aea0e4ae9fcdbb5c8\etc
5、找到一个名为gitconfig的文件,打开它把里面的[remote "origin"]那一行删掉就好了! 如果输入$ ssh -T
出现错误提示:Permission denied
(publickey).因为新生成的key不能加入ssh就会导致连接不上github。 解决办法如下: 1、先输入$
ssh-agent,再输入$ ssh-add ~/.ssh/id_key,这样就可以了。 2、如果还是不行的话,输入ssh-add
~/.ssh/id_key 命令后出现报错Could not open a connection to your
authentication agent.解决方法是key用Git
Gui的ssh工具生成,这样生成的时候key就直接保存在ssh中了,不需要再ssh-add命令加入了,其它的user,token等配置都用命令行来做。
3、最好检查一下在你复制id_rsa.pub文件的内容时有没有产生多余的空格或空行,有些编辑器会帮你添加这些的。 如果输入$ git
push origin master 提示出错信息:error:failed to push som refs to …….
解决办法如下: 1、先输入$ git pull origin master //先把远程服务器github上面的文件拉下来
2、再输入$ git push origin master 3、如果出现报错 fatal: Couldn’t find remote
ref master或者fatal: ‘origin’ does not appear to be a git
repository以及fatal: Could not read from remote repository.
4、则需要重新输入$ git remote add :djqiang/gitdemo.git
使用git在本地创建一个项目的过程 $ makdir ~/hello-world //创建一个项目hello-world $ cd
~/hello-world //打开这个项目 $ git init //初始化 $ touch README $ git add
README //更新README文件 $ git commit -m ‘first commit’
//提交更新,并注释信息“first commit” $ git remote add origin
:defnngj/hello-world.git //连接远程github项目 $ git push -u
origin master //将本地项目更新到github项目上去
初学者如何使用git命令同步代码到github
转载▼
1.首先得在github上注册一个帐号。然后新建一个库,这个很简单,就不多说了
2.在本地目录安装git,然后新建一个文件夹。比如说code吧。
init&&//初始化,会出现一个.get文件,可以通过ls
现在我们新建一个文件
&echo "hello,world" &hello.txt
&//注意添加之后查看权限
&git add hello.txt
&存储到本地
&git commit &-m
&"说明标签"
&git remote add
/用户名/库.git
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&//”origin“&&这个相当于是个别名&&你可以自己随便写也可以写成当前文件夹的名
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&面的地址是你在GITHUB
刚刚新建的 库 地址, 你建了哪几个库,你到GITHUB找到 你 建的库
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&点进去
就能看到相应的地址.
&git push -u
master&//会提示输入用户名和密码
&输入完之后会出现以下错误:
&! [rejected]
&&&&&&&master
-& master (fetch first)
error: 无法推送一些引用到 '/Lvzwq/zwq.git'
提示:更新被拒绝,因为远程版本库包含您本地尚不存在的提交。这通常是因为另外
提示:一个版本库已推送了相同的引用。再次推送前,您可能需要先合并远程变更
提示:(如 'git pull')。
提示:详见 'git push --help' 中的 'Note about fast-forwards'
git merge//会出现错误: fatel: 未指定提交并且
merge.defaultToUpstream 未设置。
此时需要重新git add ,git commit
-u&&origin
会出现以下错误:
&! [rejected]
&&&&&&&master
-& master (non-fast-forward)
error: 无法推送一些引用到 '/xxxxx/xxx.git'
提示:更新被拒绝,因为您当前分支的最新提交落后于其对应的远程分支。
提示:再次推送前,先与远程变更合并(如 'git pull')。详见
提示:'git push --help' 中的 'Note about fast-forwards' 小节。
git config branch.master.remote origin
git config branch.master.merge refs/heads/master
Merge made by the 'recursive' strategy.
&README.md | 4 ++++
&1 file changed, 4 insertions(+)
git add hello.txt
git commit -m "second push"
# 位于分支 master
# 您的分支领先 'origin/master' 共 x 个提交。
# &&(使用 "git push"
来发布您的本地提交)
无文件要提交,干净的工作区
git push -u origin master
Counting objects: 18, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (10/10), done.
Writing objects: 100% (16/16), 1.60 KiB | 0 bytes/s,
Total 16 (delta 0), reused 0 (delta 0)
To /xxxxx/xxxx.git
&&&d8aed64..f7daa6e
&master -& master
分支 master 设置为跟踪来自 origin 的远程分支 master。
同步代码成功!
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
  正确地结果如下:   Warning: Permanently added ',207.97.227.239' (RSA) to the list of known hosts.
  Hi findingsea! You've successfully authenticated, but GitHub does not provide shell access.  会有一个Warning,不用理会。  接下对库进行clone,如下:  git clone /findingsea/myRepoForBlog.git  上面的地址可以在如下界面找到:    clone成功如下:  Cloning into 'myRepoForBlog'...
  Warning: Permanently added ',207.97.227.239' (RSA) to the list of known hosts.
  remote: Counting objects: 3, done.
  remote: Total 3 (delta 0), reused 0 (delta 0)
  Receiving objects: 100% (3/3), done.  【第三步】上传README.md文件  这个时候,我们的GitHub文件夹下就多了一个myRepoForBlog文件夹,进入文件夹目录,对仓库进行初始化,如果我们之前没有勾选创建README,则要先创建README.md文件,不然上传文件会报错。如果在第一步就勾选过了,则可以直接进入。  git init
  touch README.md
  git add README.md
  git commit -m 'first_commit'
  git remote add origin /findingsea/myRepoForBlog.git
  git push origin master  【第四步】push文件  创建完README.md后,就可以push了,代码类似。  git add .
  git commit -m 'first_commit'
  git remote add origin /findingsea/myRepoForBlog.git
  git push origin master  如果执行git remote add origin /findingsea/myRepoForBlog.git,出现错误:  fatal: remote origin already exists  则执行以下语句:  git remote rm origin  再往后执行git remote add origin&&即可。  在执行git push origin master时,报错:  error:failed to push som refs to.......&  则执行以下语句:  git pull origin master  先把远程服务器github上面的文件拉先来,再push 上去。&  【结束】  再次要强调这篇文章主要是对初学者的,也就我这种github菜鸟的。  最后感谢那些无私分享自己经验和知识的博主们&',
STYLE: '.playBox_thx #player.player,.playBox_thx #player.player object{min-height:' + Math.max(Global.innerHeight * 0.6, 580) + 'px !important}.tips_container{position:top:3padding:1em 2right:50color:opacity:0.4;background:#z-index:999999}.tips_container:hover{opacity:0.8}.tips_container .tips_toggleWide{color:cursor:display:none}.tips_close{position:right:3top:3px}',
NODEINSERTED_HACK: '@-moz-keyframes nodeInserted{from{opacity:0.99;}to{opacity:1;}}@-webkit-keyframes nodeInserted{from{opacity:0.99;}to{opacity:1;}}@-o-keyframes nodeInserted{from{opacity:0.99;}to{opacity:1;}}@keyframes nodeInserted{from{opacity:0.99;}to{opacity:1;}}embed,object{animation-duration:.001s;-ms-animation-duration:.001s;-moz-animation-duration:.001s;-webkit-animation-duration:.001s;-o-animation-duration:.001s;animation-name:nodeI-ms-animation-name:nodeI-moz-animation-name:nodeI-webkit-animation-name:nodeI-o-animation-name:nodeI}',
TOGGLE_BTN: '.tips_container .tips_toggleWide'
var DONE = [];
var UTIL = {
addCss: function (str) {
var style = document.createElement('style');
style.textContent =
document.head.appendChild(style);
procFlash: function (elem) {
if (DONE.indexOf(elem) !== -1) {
if (this.reloadFlash(elem)) {
DONE.push(elem);
reloadFlash: function (elem) {
var attrs = ['data', 'src'];
var players = CONSTANTS.PLAYERS;
var reloaded =
UTIL.forEach(attrs, function (attr) {
UTIL.forEach(players, function (player) {
var find = player.
var replace = player.
var value = elem[attr];
var movie = elem.querySelector('param[name="movie"]');
if(movie&&movie.value){
movie.value = movie.value.replace(find,replace);
if (value && find.test(value)) {
var nextSibling = elem.nextS
var parentNode = elem.parentN
var clone = elem.cloneNode(true);
clone[attr] = value.replace(find, replace);
parentNode.removeChild(elem);
parentNode.insertBefore(clone, nextSibling);
//Baidu tieba shit.
if(getComputedStyle(clone).display==='none'){
clone.style.display='block';
reloaded =
forEach: function (arr, callback) {
if (this.isArrayLike(arr)) {
if (Array.prototype.forEach) {
Array.prototype.forEach.call(arr, callback);
var i = 0;
for (i = 0; i < arr length i
callbackcallarri arri
isArrayLike function obj
if typeof obj ="= 'object')"
return false
var types ="['Array',"
NodeList HTMLCollection
var i ="0;"
for i ="0;"
typeslength i
if ObjectprototypetoStringcallobjindexOftypesi ="= -1)"
return true
return false
var isStorage =""
ifGloballocalStorage
isStorage =""
var key ="String(Math.random());"
localStoragesetItemkeytest
iflocalStoragegetItemkey="='test'){"
throw not equal
localStorageremoveItemkey
isStorage=""
STORE ="{"
getItem functionkey
ifisStorage
return localStoragegetItemkey
setItem functionkey value
ifisStorage
localStoragesetItemkey value
function init
function onwbr>AnimationStartHandlere
if eanimationName ="== 'nodeInserted')"
var target ="e."
if targetnodeType ="== 1"
OBJECTEMBEDIFRAMEigtesttargetnodeName
UTILprocFlashtarget
UTILaddCssCONSTANTSNODEINSERTED_HACK
documentbodyaddEventListenerwebkitAnimationEnd onAnimationStartHandler false
function tips
var holder ="document.body.querySelector(CONSTANTS.TIPS_HOLDER);"
var div ="document.createElement('div');"
if documentdefaultViewgetComputedStyleholder nullgetPropertyValueposition ="= 'relative')"
divstyleposition ='relative'
divinnerHTML ="CONSTANTS.TIPS;"
divquerySelectortips_closeaddEventListenerclickfunctione
ifepreventDefault
epreventDefault
divparentNoderemoveChilddiv
return false
holderappendChilddiv
UTILaddCssCONSTANTSSTYLE
function shareelem
var pairs ="CONSTANTS.SHARES;"
UTILforEachpairs function item
elemvalue ="elem.value.replace(item.find," itemreplace
function setTHXopt
var player ="document.querySelector('object#movie_player');"
var parent ="document.body.querySelector('.playBox');"
var wide ="document.body.querySelector('.playBox_thx');"
ifoptplayer
playersetTHXopt
parentclassName =' playBox_thx'
parentclassName ='playBox'
var CONTROLLER ="["
fn function
host youkucom
fn function
var matches ="document.body.querySelectorAll(CONSTANTS.SHARE_DOM);"
UTILforEachmatches share
ifSTOREgetItemTHX="=='on'){"
setTHXSTOREgetItemTHX
var toggle ="document.body.querySelector(CONSTANTS.TOGGLE_BTN);"
togglestyledisplay='inline'
toggleaddEventListenerclickfunction
STOREsetItemTHXSTOREgetItemTHX="=='on'?'off':'on');"
setTHXSTOREgetItemTHX
host tudoucom
fn function
function hack
var TUI_copyToClip ="Global.TUI&&Global.TUI.copyToC"
ifTUI_copyToClipTUI_copyToCliptoStringindexOfarguments="==-1){"
GlobalTUIcopyToClip ="function"
var matches ="document.body.querySelectorAll(CONSTANTS.SHARE_DOM);"
UTILforEachmatches share
TUI_copyToClipapplyGlobalTUI arguments
clearIntervalinter
var tudouPlayer ="document.body.querySelector('#playerObject');"
var normalDom ="document.querySelector('.normal');"
if tudouPlayer
normalDomclassName ="normalDom.className.replace('normal','widescreen');"
var inter ="setInterval(hack,100);"
GlobalplayerExeventfirescaletrue
var host ="location."
function PROCitem
if hostindexOfitemhost ="= -1)"
UTILforEachCONTROLLER PROC
阅读(2636)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
在LOFTER的更多文章
loftPermalink:'',
id:'fks_',
blogTitle:'关于上传文件到github的方法(windows版)',
blogAbstract:'说来也惭愧,用github下载很多的demo,但是还不知道自己该怎么上传。所以今天写点,一来分享是自己的一些经验,二来也是做个记录,万一哪天又不记得了:)  废话不多说,直接来,这次主要介绍的是mac下的安装和使用。  【第一步】建立先仓库',
blogTag:'',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:7,
publishTime:2,
permalink:'blog/static/',
commentCount:0,
mainCommentCount:0,
recommendCount:0,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'',
hmcon:'1',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}博客访问: 3170514
博文数量: 585
博客积分: 13864
博客等级: 上将
技术积分: 10007
注册时间:
认证徽章:
微博:/butbueatiful
github: /hhktony
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: LINUX
简要:&&& 将图片放在仓库里面,在文件里链接它,最后 push 到 github 上。github 图片链接格式:(/yourname/your-repository/raw/master/images-folder/xxx.png)要自己设定的:yourname, your-repository, your-folder, xxx.png。&&& yourname&&&&&&& & & --- 你的帐号&&& your-respository --- 你的 project 名&&& images-folder&& && --- 你存放图片的文件夹,如果是直接放在 project 的项目根目录的話,就可以省略這個&&& xxx.png&&&&&&&& & & && --- 你的图片名然后在 README.md 里添加:例如:我在我的 dotvim 文件夹下一个 screenshots 目录,在该目录里有一个 vim-screenshot.jpg 截图。那么添加链接的方式如下&![image](/ButBueatiful/dotvim/raw/master/screenshots/vim-screenshot.jpg)&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
阅读(22200) | 评论(3) | 转发(1) |
相关热门文章
给主人留下些什么吧!~~
文明上网,理性发言...
能带给你帮助,是我最大的收获,写这个&blog&的目的也在于此
真心不错,用上了。十分感谢分享。
请登录后评论。

我要回帖

更多关于 上传本地文件到github 的文章

 

随机推荐