VS Code如何在现有的本地项目中使用github

时间:2017-08-26 01:11:20

标签: github

我在C:\ ABC文件夹中有一个本地项目,只是意识到有时间将它备份到GitHub。这就是我所做的:

  1. 登录GitHub,创建一个新项目(存储库或任何你 能打电话)。
  2. 复制网址。
  3. 返回VS Code,安装GitHub扩展。
  4. 转到欢迎页面,单击"克隆Git存储库..."。粘贴URL for" Repository URL"。输入我的本地路径C:\ ABC,。
  5.   

    错误Git:致命:目的地路径" C:\ ABC"已经存在而不是   一个空目录。

    我知道它试图从GitHub获取到本地,但我想要的是相反的。谷歌搜索从头开始发现了很多关于如何做的文章和视频,但不是现有的本地项目。

5 个答案:

答案 0 :(得分:3)

尝试使用命令行:

cd c:\ABC
git init .
git config --global user.name <yourGitHubAccount>
git config --global user.email <yourGitHubEmailAccount>
git add .

git status
# edit .gitignore to ignore folder you don't want

git commit -m "first commit"
git remote add origin https://github.com/<yourGitHubAccount>/<yourRepo.git>
git push -u origin master

确保您的GitHub回购实际上是空的(没有README.md

答案 1 :(得分:2)

@VonC,重新做了同样的步骤: 1)创建一个新的本地空目录,在VS Code链接本地空目录到GitHub的空存储库,如上所述。成功了。

2)用我的代码文件/目录填充这个本地空目录。

3)git init . system msg:重新初始化现有的Git存储库... / .git /

3)一次运行这两个命令,没有错误也没有消息。

git config --global user.name Jeb50 
git config --global user.email Jeb50@XYZ.com

4)git add . 系统消息:

warning: LF will be replaced by CRLF in .vscode/launch.json.
The file will have its original line endings in your working directory.
warning: LF will be replaced by CRLF in Angular/Modules/mainApp.js.
The file will have its original line endings in your working directory.
warning: LF will be replaced by CRLF in content/Site.css.
The file will have its original line endings in your working directory.
warning: LF will be replaced by CRLF in package-lock.json.
The file will have its original line endings in your working directory.
warning: LF will be replaced by CRLF in package.json.
The file will have its original line endings in your working directory.

5)git status 系统消息:

On branch master

Initial commit

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)

        new file:   .gitignore
        new file:   .vscode/launch.json
        new file:   Angular/Controllers/AuthController.js
        new file:   Angular/Controllers/MainController.js
        new file:   Angular/Models/user.js
        new file:   Angular/Modules/mainApp.js
        new file:   Passport/passport-init.js
        new file:   Routes/authentication.js
        new file:   Routes/routerMEAN2.js
        new file:   Untitled.png
        new file:   Views/Authentication/login.html
        new file:   Views/Authentication/register.html
        new file:   Views/Authentication/unauth.html
        new file:   Views/Main/About.html
        new file:   Views/Main/Contact.html
        new file:   Views/Main/index.html
        new file:   Views/Starter.ejs
        new file:   content/Site.css
        new file:   package-lock.json
        new file:   package.json
        new file:   server.js

6)我的.gitignore文件:

# individual files
9222.jpg
err1.jpg
config.js

# exclude  folders
node_modules/

7)git commit -m "first commit",似乎没问题但是在存储库下没有显示代码 系统消息:

[master (root-commit) f8e435e] first commit
 21 files changed, 2305 insertions(+)
 create mode 100644 .gitignore
 create mode 100644 .vscode/launch.json
 create mode 100644 Angular/Controllers/AuthController.js
 create mode 100644 Angular/Controllers/MainController.js
 create mode 100644 Angular/Models/user.js
 create mode 100644 Angular/Modules/mainApp.js
 create mode 100644 Passport/passport-init.js
 create mode 100644 Routes/authentication.js
 create mode 100644 Routes/routerMEAN2.js
 create mode 100644 Untitled.png
 create mode 100644 Views/Authentication/login.html
 create mode 100644 Views/Authentication/register.html
 create mode 100644 Views/Authentication/unauth.html
 create mode 100644 Views/Main/About.html
 create mode 100644 Views/Main/Contact.html
 create mode 100644 Views/Main/index.html
 create mode 100644 Views/Starter.ejs
 create mode 100644 content/Site.css
 create mode 100644 package-lock.json
 create mode 100644 package.json
 create mode 100644 server.js

8)git remote add origin https://github.com/Jeb50/MEAN2.git 系统消息:

fatal: remote origin already exists.

9)git push -u origin master 系统消息:

Counting objects: 34, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (29/29), done.
Writing objects: 100% (34/34), 30.77 KiB | 0 bytes/s, done.
Total 34 (delta 1), reused 0 (delta 0)
remote: Resolving deltas: 100% (1/1), done.
To https://github.com/TLKG/MEAN2.git
 * [new branch]      master -> master
Branch master set up to track remote branch master from origin.

GitHub上的“刷新代码”选项卡,显示预期的文件。似乎工作。

  

真棒!

答案 2 :(得分:1)

我只需使用github桌面应用程序就可以做到这一点,只需单击三下:https://help.github.com/en/desktop/contributing-to-projects/adding-a-repository-from-your-local-computer-to-github-desktop

关键方向是:即使不是GitHub存储库,也可以将任何Git存储库添加到GitHub Desktop 。

它将识别该目录不是存储库,并询问您是否要创建该目录。 screenshot of what to click to create repo

点击创建存储库后,您将看到以下信息:

full repo create dialogue

最后,它甚至会提示您将其发布到Github进行备份:

publish to github

答案 3 :(得分:0)

这是我使用SourceTree将来自VSCode的现有文件夹/项目添加到GitHub的解决方案:

  1. 在GitHub上创建一个仓库。创建后,您可以创建.gitignore,也可以在步骤3中手动执行。
  2. 在命令行的项目根目录中,键入以下内容以将该项目初始化为Git存储库:git init
  3. 在根目录中为您的特定项目手动创建一个.gitignore(如果尚未在步骤1的存储库中创建),请确保忽略所有相关文件(即,用于Web项目的node_modules)。最好从Github(https://github.com/github/gitignore)的现有模板中复制完成的文件。
  4. 打开SourceTree并按“克隆/新建”
  5. 选择“添加工作副本标签”
  6. 在“工作副本路径”中,使用省略号找到在步骤1中初始化Git项目的根目录。您会知道自己做得正确,因为在对话框中“存储库类型”旁边,您应该会看到一条消息,指出“这是一个Git存储库”。关闭对话框。
  7. 转到右上角的“设置”,然后“添加”遥控器。
  8. 假定为默认设置,“名称”为“来源”(选择“默认远程”),对于URL / Path,输入在步骤1中创建存储库时提供的完整GitHub路径。 (即https://github.com/MyUserName/MyCoolCode.git
  9. 暂存并提交文件
  10. 将master分支推送到“起源”

我承认,我认为GitHub提供的用于初始化仓库和执行第一次提交的命令行指令比较容易。但是,此时,您的GitHub存储库已正确连接到SourceTree中,您可以使用。

我还要说,如果您可以提前考虑,那么在执行任何工作之前,创建一个空的存储库并将其克隆到SourceTree中要容易得多。这肯定是从第1天起最容易跟踪的。但是,上述步骤对于添加现有解决方案将非常有效。

答案 4 :(得分:0)

这个解决方案可能很la脚,但对我来说却像个魅力。

1)登录GitHub,创建一个与您的项目相似的存储库。
2)复制URL。
3)打开VS Code,将存储库克隆为本地使用。
  您可以通过按命令 + p 来执行此操作,这将打开一个输入框。
    在输入框中写入克隆,然后选择克隆。
    粘贴git存储库网址,然后选择要克隆的任何空目录。
4)打开本地项目,将.git文件夹以外的所有内容复制并粘贴到克隆的存储库中。 5)现在,在VS Code中打开新克隆的项目。
6)转到查看> SCM
7)在输入中输入一些注释(例如初始提交)。
8)单击检查图标,选择是,然后输入一些消息。
9)点击SCM选项(选中按钮旁边的三个点)并发布分支。