我是GIT和存储库的新手,所以我遇到了一个问题而且不知道我做错了什么
我不确定我做错了什么,但我做了以下
git pull
以确保我拥有所有最新的提交git status
在本地进行了更改,它向我显示已修改了两个文件。然后我尝试git push
推送我的更改,这显示了我所有已经更新的地方git push
实际做了一些事情,git status,
它向我显示了2个被修改的文件,然后我去了git log
,它显示了我在本地的提交,然后我重新提交文件服务器端和我的改变没有生效。 git reset --hard HEAD
,但我的更改仍未显示,我做错了什么?
答案 0 :(得分:1)
听起来你正在推送一个附有工作树的存储库。为避免出现问题,最好只推送使用git clone --bare
(或等效的)创建的裸存储库。
如果你确实推送到非裸存储库,无论如何,你必须在服务器上执行以下命令。这将失去所有本地(未提交)更改。
git reset --hard HEAD
git checkout -f
答案 1 :(得分:0)
您必须将更改添加到索引中,然后提交它们。
git add modified_file
git add other_file
git commit -m "message"
使用索引构造下一个提交可以做一些事情,例如只添加修改后的文件中的一些更改(参见git-gui的Stage hunk菜单选项)。一旦索引具有正确的修改集,则git commit
形成一个提交。 git push
用于发送存储库包含的上游存储库中不存在的提交。因此,如果您当地没有新的提交,则不会做任何事情。