从本地代码库推送到托管在GitHub上的远程代码库

119

我使用 Git GUI 在我的开发机上创建了 Visual Studio 2010 解决方案文件夹的本地仓库。然后在我的 GitHub 账户中创建了一个远程仓库。现在,我正在寻找如何将本地仓库推送到远程仓库。

在 SVN 中,我可以使用 TortoiseSVN 提交并将更改推送到远程仓库。我没有看到类似于那样的工具可用于 Git。

我该如何将我的本地仓库推送到 GitHub 上的远程仓库?

5个回答

236

首先,使用git remote add [别名] [url]命令建立本地仓库和远程仓库之间的关系,然后使用git push命令将本地仓库推送到远程仓库。如果您访问Github仓库,它会显示用于推送的URL。您需要输入以下内容:

git remote add origin git@github.com:username/reponame.git

除非您使用git clone命令克隆了远程代码库,否则此步骤已经为您完成。

之后,您将键入:

git push origin master

在第一次推送后,您只需键入:

git push

当你在未来想要更新远程代码库时。


1
你是真的在输入“origin”还是只输入“origin”?最好避免使用波浪线,因为它对Git有特殊含义。 - GoZoner
1
对我来说,它只能使用https:github.com/username/repo.git,我不知道为什么。 - eLRuLL
8
我需要先执行 git pull origin master,然后再进行 push。 - Renaud
10
为什么他们不能在普通文档中解释这个?感觉像是个秘密或者什么玩意。谢谢! - R Claven
1
@RClaven,在Github上创建新的仓库后,下一个屏幕中的“从命令行推送现有仓库”部分清楚地解释了这一点。 - mujimu
显示剩余8条评论

3
Subversion在任何时候都隐含地与远程仓库相关联。而Git允许多个“远程”,每个远程代表一个你可以推送或拉取的单个远程位置。
你需要为GitHub仓库添加一个远程到你的本地仓库,然后使用git push ${remote}git pull ${remote}来分别推送和拉取,或者使用相应的GUI工具。
Pro Git在这里讨论了远程: http://git-scm.com/book/ch2-5.html GitHub帮助文档也以更加“任务导向”的方式讨论了它们: http://help.github.com/remotes/ 一旦你将两者关联起来,就能够推送或拉取分支。

3

类型

git push

在存储库目录内的命令行中


1
我想这意味着要使用gitbash而不是gitgui? - quakkels
是的,如果你所使用的系统没有完整功能的命令行界面,那么这就是需要在问题中提到的事情。 - Gareth
我并不缺少那个...只是有点害怕命令行。主要是因为我没有多少使用经验。这会帮助改变这种情况。 - quakkels
学习曲线可能会很陡峭,但普遍认为其好处远大于缺点。 - Gareth
谢谢。我不想再找太久了。由于大小问题,IDE一直冻结。再次感谢。 - Eric Leroy

1
这适用于我的GIT版本1.8.4:
  1. 从本地存储库文件夹中,右键单击并选择“Git Commit Tool”。
  2. 在那里,在“Unstaged Changes”下选择要上传的文件,然后单击“Stage Changed”按钮。(您可以最初单击“Rescan”按钮以检查哪些文件已被修改但尚未上传。)
  3. 编写提交消息,然后单击“Commit”按钮。
  4. 现在再次右键单击文件夹,然后选择“Git Bash”。
  5. 键入:git push origin master并输入您的凭据。完成。

0

打开命令提示符 进入项目目录

输入 git remote add origin 你的 GitHub 仓库地址 with.git


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接