将现有源代码导入GitHub

时间:2011-01-11 14:25:12

标签: git github

如何将源代码从我的电脑导入我的GitHub帐户?

14 个答案:

答案 0 :(得分:960)

如果您有本地源代码,您想要添加到新的远程新git存储库而不首先“克隆”远程,请执行以下操作(我经常这样做 - 您在bitbucket / github中创建远程空存储库,然后推高你的来源)

  1. 创建远程存储库,并获取git@github.com:/youruser/somename.githttps://github.com/youruser/somename.git

    等网址

    如果您已设置本地GIT仓库,请跳过第2步和第3步


  2. 在本地,位于您的来源的根目录git init

    2a上。如果使用.gitignore和README.md初始化repo,则应该执行git pull {url from step 1}以确保不提交要忽略的源文件;)

  3. 在本地,在初始回购中添加并提交您想要的内容(对于所有内容,git add .然后git commit -m 'initial commit comment'


  4. 附加名为'origin'的远程仓库(就像克隆一样)
    git remote add origin [URL From Step 1]

  5. 执行git pull origin master拉取远程分支以使它们同步。
  6. 推高你的主分支(将主人改为其他分支的其他东西):
    git push origin master

答案 1 :(得分:41)

excellent free eBook ProGit对此进行了解释。它假设您已经拥有一个本地Git存储库和一个远程存储库。要连接它们,请使用:

$ git remote
origin
$ git remote add pb git://github.com/paulboone/ticgit.git
$ git remote -v
origin    git://github.com/schacon/ticgit.git
pb    git://github.com/paulboone/ticgit.git

要将数据从本地存储库推送到GitHub,请使用:

$ git push pb master

如果您尚未设置本地和/或远程存储库,请查看GitHubprevious chapters in the book上的帮助。

答案 2 :(得分:21)

使用GitHub GUI提到的其中一条评论,但它没有提供任何特定的使用帮助,并注意到大多数(如果不是全部)答案仅在命令提示符下有用。

如果您想使用GitHub GUI,您可以按照以下步骤操作:

  1. 点击“+”按钮,然后选择“添加本地存储库” Enter image description here
  2. 导航到包含现有代码的目录,然后单击“添加”按钮。
  3. 现在应该提示您“在此处创建新的本地Git存储库”,然后单击“是”按钮。 Enter image description here
  4. 根据需要添加“提交摘要”和“扩展描述”。默认情况下,您的所有文件都应选中带有复选标记的文件。单击“提交和同步”按钮。 Enter image description here
  5. 现在,系统会提示您添加项目的名称和说明以及要将其推送到的帐户(如果您有多个)。单击“推送存储库”按钮 Enter image description here
  6. 片刻旋转GitHub图标后,您的源代码将属于本地存储库,并与GitHub帐户上的远程存储库推送/同步。所有这一切都假设您之前已经设置了GitHub GUI,GitHub帐户和SSH密钥。

答案 3 :(得分:12)

正如JB非常正确地指出的那样,只需按照说明操作即可在GitHub上轻松实现。

以下是您登录后使用http://github.com/new在GitHub上设置新存储库后显示的说明示例。

Global setup:

 Set up Git:
  git config --global user.name "Name"
  git config --global user.email email@gmail.com


Next steps:

  mkdir audioscripts
  cd audioscripts
  git init
  touch README
  git add README
  git commit -m 'first commit'
  git remote add origin git@github.com:ktec/audioscripts.git
  git push -u origin master


Existing Git repository?

  cd existing_git_repo
  git remote add origin git@github.com:ktec/audioscripts.git
  git push -u origin master


Importing a Subversion repository?

  Check out the guide for step-by-step instructions.

这可不容易!!

答案 4 :(得分:10)

是。创建一个新的存储库,在源当前存在的目录中执行git init

更多信息:http://help.github.com/creating-a-repo/

答案 5 :(得分:8)

在尝试Pete的步骤时,我遇到了一些麻烦。这些是我最终的步骤。

  1. 使用您的操作系统删除要提交的项目文件夹中的.git文件夹。这将为您提供一个干净的石板。这也是在项目文件夹中创建.gitignore文件的好时机。这可以是您在github.com上创建存储库时创建的.gitignore的副本。执行此副本将避免在更新github.com存储库时将其删除。

  2. 打开Git Bash并导航到刚删除.git文件夹的文件夹。

  3. 运行git init。这会在您所在的文件夹中设置本地存储库。

  4. 运行git remote add [alias] https://github.com/[gitUserName]/[RepoName].git。 [别名]可以是你想要的任何东西。 [别名]意味着绑定到本地存储库,因此机器名称适用于[别名]。该URL可以在github.com上找到,顶部确保单击HTTP | SSH | Git Read-Only中的HTTP按钮。 git://网址对我不起作用。

  5. 运行git pull [alias] master。这将更新您的本地存储库并避免一些合并冲突。

  6. 运行git add .

  7. 运行git commit -m 'first code commit'

  8. 运行git push [alias] master

答案 6 :(得分:7)

  1. 打开您的GitHub信息中心(如果您已登录,则位于https://github.com/
  2. 点击 New Repository
  3. 填空;单击创建存储库
  4. 按照当时出现的页面上的说明进行操作

答案 7 :(得分:6)

来自Bitbucket:

推高现有存储库。您的计算机上已有Git存储库。让我们把它推到Bitbucket:

cd /path/to/my/repo
git remote add origin ssh://git@bitbucket.org/javacat/geo.git
git push -u origin --all   # To push up the repo for the first time

答案 8 :(得分:4)

我来到这里寻找一种将现有源文件添加到GitHub存储库的简单方法。我看到@ Pete完美答案并且想到“什么?!必须有一个更简单的方法。”

这是五个步骤中更简单的方法(不需要控制台操作!)

如果你真的很匆忙,你可以阅读第3步。其他人只是为了完整。

  1. 在GitHub网站上创建一个存储库。 (我不会通过逐步引导你来侮辱你的智慧。)
  2. 在本地克隆新存储库。 (您可以通过网站或桌面客户端软件执行此操作。)
  3. 在硬盘上找到新克隆的存储库,并将文件添加到普通目录中。
  4. 将更改同步回GitHub。
  5. 就是这样!
  6. 完成!

答案 9 :(得分:4)

将GitHub存储库添加为远程源(将[]替换为您的URL):

git remote add origin [git@github.com:...]

切换到您的主分支并将其复制到开发分支:

git checkout master
git checkout -b develop

将您的开发分支推送到GitHub开发分支(-f表示强制):

git push -f origin develop:develop

答案 10 :(得分:3)

实际上,如果您选择在GitHub上创建一个空的回购,它会为您提供准确的说明,您几乎可以复制并粘贴到您的终端中(此时):

…or create a new repository on the command line

echo "# ..." >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin git@github.com:<user>/<repo>.git
git push -u origin master

答案 11 :(得分:2)

以下是有关如何启动GitHub存储库,然后将已创建的代码推送到其中的一些说明。第一组说明直接来自GitHub。

来源:https://help.github.com/articles/create-a-repo/

  1. 在任意页面的右上角,单击,然后单击新存储库

  2. 为您的存储库创建一个简短,令人难忘的名称。例如,“hello-world”。

  3. (可选)添加存储库的说明。例如,“我在GitHub上的第一个存储库。”

  4. 选择创建公共存储库还是私有存储库。

  5. 使用自述文件初始化此存储库。

  6. 创建存储库。

  7. 恭喜!您已成功创建了第一个存储库,并使用README文件对其进行了初始化。

    现在执行这些步骤之后,您需要将本地计算机上的代码推送到刚刚创建的存储库,然后按照以下步骤执行此操作:

    1. git init(在您的代码所在的根文件夹中)

    2. git add -A(这将添加您要提交的目录中的所有文件和文件夹)

    3. git commit -am "First Project commit"

    4. git remote add origin git@github.com:YourGithubName/your-repo-name.git(您可以在主页上的“ssh clone URL”下创建的GitHub存储库中找到此地址)

    5. git push -u origin master

    6. 就是这样。您的代码现在将被推送到GitHub。现在每次你想继续推动已经改变的代码。

      1. git commit -m "New changes"

      2. git push origin master(如果主人是您正在处理的分支机构)

答案 12 :(得分:1)

我的解决方案:

问题是文件的大小,不能超过100M。

在迁移到github之前,在存储库中执行以下操作:

git clone --mirror git://example.com/some-big-repo.git

wget http://repo1.maven.org/maven2/com/madgag/bfg/1.12.12/bfg-1.12.12.jar

mv bfg-1.12.12.jar bfg.jar

java -jar bfg.jar --strip-blobs-bigger-than 100M some-big-repo.git

cd some-big-repo.git

git reflog expire --expire=now --all && git gc --prune=now --aggressive

git push

就绪!

现在通过该工具再次进行迁移:https://github.com/new/import

了解更多: Error while pushing to github repohttps://rtyley.github.io/bfg-repo-cleaner/

我希望我帮助过你。 :)

答案 13 :(得分:0)

在git hub中创建存储库

允许通过GIT跟踪您的项目

  1. 使用CMD转到保存项目文件的文件夹-> cd / automation / xyz / codebase 使用命令git status检查git初始化 如果收到此错误消息:致命:不是git存储库(或任何父目录):.git,这意味着git不会跟踪您当前所在的文件夹。在这种情况下,请通过输入git init初始化项目文件夹中的git,然后执行添加和提交项目的过程。

如果收到其他错误消息,请仔细阅读其内容。是不是说无法识别单词“ git”,这表示计算机上未安装git?就是说您已经在初始化git的文件夹或子文件夹中了?用Google搜索您的错误和/或输出以了解它,并找出解决方法。

现在运行以下命令

回显“您的git中心存储库名称” >> README.md git初始化 git添加README.md git commit -m“第一次提交” git remote add origin https:// #

在您第一次打开存储库时将获得以上阻止

如果在上一次命令运行后发生错误或什么也没有发生,则“ git push -u origin master” 不用担心

转到具有代码的文件夹,然后通过git扩展将其推送到git [URL]分支