Git推送到GitHub commit而不使用根文件夹

odopli94  于 12个月前  发布在  Git
关注(0)|答案(1)|浏览(159)

背景:

我最近完成了哈佛的CS50课程,并开始学习CS50游戏开发入门。现在我正在学习使用Git和GitHub来完成家庭作业。我花了大约15天的时间学习git的工作原理,我想我已经了解了基本知识。但是,在网上搜索,我找不到如何解决一个令人难以置信的愚蠢问题,这让我卡住了。

问题:

CS50的团队要求你将你的作业推送到GitHub仓库中一个名为“games 50/projects/2018/x/pong”的分支。他们还要求你不要更改文件夹结构。(我已经下载,修改,然后推的那个,你可以在下面看到的“Pong”文件夹,这里我只是修改了main.lua)。这意味着他们将可以访问您的“main.lua”文件,通过访问以下URL来检查您所做的工作:https://github.com/me50/USERNAME/blob/games50/projects/2018/x/pong/main.lua(其中“USERNAME”是您的用户名)。
但这就是我的分支的样子(注意第二个“pong”):https://github.com/me50/USERNAME/blob/games50/projects/2018/x/pong/pong/main.lua
所以看起来推送我的提交在“pong”分支中创建了一个“pong”文件夹,打乱了所需的结构,使CS50的团队无法访问它进行评估。我曾试图理解如何在没有根“Pong”文件夹的情况下提交文件,但完全失败了。

到目前为止我做了什么:

我在我的计算机上本地工作,使用VSCode,在主(主)分支上,没有其他分支。
我的文件夹结构看起来像这样:
第一个月
| > Sounds
| paddle_hit.wav
| score.wav
| wall_hit.wav
| Ball.lua
| class.lua
| font.ttf
| main.lua
| Paddle.lua
| push.lua
使用Git,我在VSCode中$git init,同时将“Pong”文件夹作为项目文件夹打开。
我使用$git add暂存所有文件。
我$git提交暂存文件。
我用$git将提交推送到GitHub。
我得到了额外的“pong”文件夹,如上所示,包含所有我想推的文件。我无法找到一种方法来摆脱这个根文件夹。我觉得愚蠢。
有什么建议吗?提前谢谢。

qlfbtfca

qlfbtfca1#

要将所有内容移出根文件夹,您可以转到存储库的根目录并运行以下命令:

git mv -r pong/* .
rm -rf pong # only run this once you know the files have moved
git commit -am "Collapsed pong directory"

字符串
以这种方式移动文件将告诉git保留文件的提交历史,而不是假设您从头开始创建新文件。

相关问题