我刚刚学习了GitHub的一些基础知识并且一直在使用gh-pages来托管网站。通过命令行添加/提交更改,然后通过GH应用程序同步分支,我已经能够多次成功更改/更新站点。
然后我去做了一些愚蠢的事。 Git正在跟踪我的网站中的所有文件和文件夹。文件夹,其中包含index.html,样式文件夹和图像。由于最初的网站只是一个实验,我从'网站'删除了与之相关的所有文件。将文件夹放到桌面上,并使用我们新的,更好的文件和文件夹批量替换它们的网站'文件夹中。
所以,在git上:
old site --> 'website folder'/index.html
'webiste foler'/styles/main.css
new site --> 'website folder'/'root folder'/index.html
'website folder'/'root folder'/styles/main.html
'website folder'/'root folder'/about/about.html
'website folder'/'root folder'/images/worker.jpg
我的假设是,因为GH会跟踪网站文件夹中的任何变化,'取代里面的内容将没什么大不了的。但是,因为我从命令行添加/提交/推送了所有更改(根据提交/推送后输入的' git status'和#39; git log'命令)我无法在git app中同步分支。
'同步'应用程序中的页面显示旧网站项目(索引,main.css和照片),其中红色的大DELETED消息和旁边的复选框。在此之下,它表示“没有未提交的提交”。
以下是我从分支页面点击“同步分支”时收到的消息: "同步失败:请在同步之前提交所有更改。"
当我访问网站网址时,它仍然显示旧的,糟糕的网站。
我知道很长的解释,但我想要准确。
以下是我想知道的: a)导致同步失败的原因是什么?
b)用根文件夹中存储的新文件替换所有旧文件会导致混淆吗?意思是,将新的index.html存储在根文件夹中是否意味着git不知道如何使用与旧文件一起正常工作的路径?简单地从根文件夹中删除文件会改变git方面的任何内容,知道正确的html路径吗?c)有没有办法推送新的根文件夹来替换在username.github.io/sitename上托管的旧网站?
我花了大量时间研究新文件,并希望将它们(对于我自己和其他人)显示为可通过链接访问的网页,而不是仅通过我自己的浏览器加载和刷新它们作为文件。任何有助于我排除故障的见解或想法都将非常感激。
感谢您一直到底阅读! -Jim
答案 0 :(得分:0)
旧问题,但人们可能会在谷歌找到什么时发现它"您的网页出现问题:无法同步网页目录"手段。
要回答这个问题:你不能在其他地方移动文件并让事情仍然有效,gh-pages网站总是检查index.html相对于root。除非您以username.github.io/projectname/newdir
的身份访问该网站,否则您无法将其移至其他目录并仍然可以使用gh页面。用户无法访问任何没有index.html的目录。