如何将Git版本控制(Bitbucket)添加到现有的源代码文件夹中?


83

如何将现有文件夹的内容添加到Git版本控制中?

这里的教程介绍了创建目录然后向其中添加源内容的情况。我在依赖于路径的文件夹中有一些源代码,不想移动它。

那么,如何才能进入我的文件夹并使其成为存储库?


git repo是否已经存在于bitbucket上?还是只是从头开始,想要创建将在bitbucket上使用的git repo?
杰夫·B

我已经在bitbucket上创建了一个仓库。
user1406716

3
您想要的确切内容在这里描述。samranga.blogspot.com/2015/07/...
Samitha Chathuranga

如果您拥有Visual Studio for Git之类的工具-您是否需要使用命令行?它具有一个发布工具,您可以在其中发布一个全新的分支
Peter PitLock

Answers:


176

使用@Arrigo响应和@Samitha Chathuranga注释的最终工作解决方案,我将综合起来为这个问题建立完整的响应:

  1. 假设您在PC上有项目文件夹;
  2. 在bitbucket上创建一个新的存储库: 在此处输入图片说明

  3. 我有一个现有项目在此处输入图片说明

  4. 打开Git CMD控制台并在第二张图片中键入命令1(转到PC上的项目文件夹)

  5. 键入命令 git init

  6. 键入命令 git add --all

  7. 从第二张图片(git remote add origin YOUR_LINK_TO_REPO)输入命令2

  8. 键入命令 git commit -m "my first commit"

  9. 键入命令 git push -u origin master

注意:如果遇到无法检测到电子邮件或姓名的错误,只需在第5步后键入以下命令:

 git config --global user.email "yourEmail"  #your email at Bitbucket
 git config --global user.name "yourName"  #your name at Bitbucket

@VibhavChaddha有一个git命令:git remote add origin YOUR_LINK_TO_REPO
Choletski '17

不,我知道。我的意思是我们必须在您提到的步骤之间的某个地方使用它,因为您在图片中特别指定了它。谢谢。
Me_developer '17

1
对于第7步,如果您没有为ssh设置公共密钥(例如,获得权限被拒绝(publickey).fatal:在推送时无法从远程存储库读取),则使用https URL, git remote set-url origin https://<username>@bitbucket.org/<username>/reponame.git
M_K

1
@Jonjie您可以输入任何文本
Choletski '17

1
@Choletski太好了!:)
Jonjie '17

27

您可以在包含其他文件的目录中初始化Git目录。之后,您可以将文件添加到存储库并在此提交。

用一些代码创建一个项目:

$ mkdir my_project
$ cd my_project
$ echo "foobar" > some_file

然后,在项目文件夹中进行初始提交:

$ git init
$ git add some_file
$ git commit -m "Initial commit"

然后使用Bitbucket或类似的方法添加aremote并向上推:

$ git remote add some_name user@host:repo
$ git push some_name

然后,您可能还需要配置跟踪分支等。有关此信息,请参阅git remote set-branches和相关命令。


1
您是否需要先在bitbucket中创建git repo才能推送到它?
杰夫·B

4
是。您必须在bitbucket上创建一个位置,以便他们知道在哪里期望谁,他们创建的存储库将是空的,因此您可以在此处推送任何内容:)
johannes

我得到下面的错误。{master *}〜/ websites / example7.dev $ git remote add some_name mavme@bitbucket.org/mavme/example-site-example7.dev.git 04:40:46 {master *}〜/ websites / example7.dev $对于'混帐推some_name密码mavme@bitbucket.org ':
user1406716

错误消息的下一部分,因为它不适合一个注释:To mavme@bitbucket.org/mavme/example-site-example7.dev.git![拒绝]管理员->管理员(非快速转发)错误:无法将某些引用推送到' mavme@bitbucket.org/mavme/example-site-example7.dev.git '为了防止您丢失历史记录,快进更新被拒绝合并远程更改(例如“ git pull”),然后再次推送。有关详细信息,请参见“ git push --help”的“关于快进的注意事项”部分。04:40:54
user1406716

无论出于何种原因,bitbucket似乎都创建了一个master分支。您可以克隆它(git clone mavme@bitbucket.org/mavme/example-site-example7.dev.git')并检查其中是否没有价值,您可以用力(git push -f some_name)进行项目推送
johannes

24

用户johannes告诉您,通常情况下,如何将现有文件添加到Git存储库。因为您谈论Bitbucket,所以建议您执行以下操作:

  1. 在Bitbucket上创建一个新的存储库(您可以在个人资料页面的顶部看到“创建”按钮),然后您将转到此页面:

    在Bitbucket上创建存储库

  2. 填写表格,单击下一步,然后您将自动转到此页面:

    从头开始创建存储库或添加现有文件

  3. 选择添加现有文件,然后转到此页面:

    在此处输入图片说明

  4. 使用这些命令,然后将现有文件上传到Bitbucket。之后,文件在线。


3
第四步中的命令将给出错误。必须遵循此链接中的以下步骤。samranga.blogspot.com/2015/07/...
Samitha Chathuranga

2

这些命令在您的Bitbucket帐户中给出。在Bitbucket中打开存储库时,它会为您提供您需要按顺序执行的命令的完整列表。所缺少的是确切地需要在哪里执行这些命令(Git CLI,SourceTree终端)。

当我在Git CLI中编写这些命令时,我在为这些命令而苦苦挣扎,但是我们需要在SourceTree终端窗口中执行这些命令,并且存储库将添加到Bitbucket中。


1

对于这个问题,我有一个非常简单的解决方案。您不需要使用控制台。

TLDR:创建存储库,将文件移动到现有项目文件夹,SourceTree将询问您他的文件在哪里,找到文件。完成,您的存储库位于另一个文件夹中。

长答案:

  1. 在Bitbucket上创建新的存储库
  2. 单击“在SourceTree中克隆”
  3. 让程序将您的新存储库放在所需的位置,在我的情况下,SourceTree在“我的文档”中创建了一个新文件夹。
  4. 在Windows资源管理器中找到新的存储库文件夹。
  5. 剪切.hg和README(或在该文件夹中找到的其他文件)
  6. 将其粘贴到您现有项目所在的位置
  7. 返回SourceTree并显示“遇到错误...”,只需单击“确定”。
  8. 在左侧,您将拥有您的存储库,但带有红色消息:“存储库已移动或删除”。点击那个。
  9. 现在,您将看到“存储库丢失”弹出窗口。单击“更改文件夹”,然后找到您现有的项目文件夹,在该文件夹中您已将前面提到的文件移动到了该文件夹中。
  10. 而已!

提示:在创建新的存储库后,“在SourceTree中克隆”选项不可用,因此您首先必须单击“创建自述文件”以使该选项可用。


步骤6.5删除新的存储库文件夹。
AMAN77 '19
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.