我修改了我的本地文件。我在当地承诺,没关系。但是当我推送到github时,我得到的消息是所有的东西都在更新。这是命令及其结果:
git push origin master
我有以下错误消息:
Everything up-to-date
然后看看发生了什么,我运行gitK命令,我有:
我不明白为什么会收到此错误?为什么我不能将我的代码推送到github?
我运行命令:
git status
On branch dev-branch
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
(commit or discard the untracked or modified content in submodules)
modified: deploy/openshift (modified content)
no changes added to commit (use "git add" and/or "git commit -a")
答案 0 :(得分:2)
根据您的git status
消息,您处于分支dev-branch
而不是master
。
当git push origin master
时,最后一个参数是分支名称。您在名为dev-branch
但不在master
的分支中提交,因此推送master
没有任何更改。
您可能要么:
git push origin dev-branch
将在GitHub上创建dev-branch
分支并将代码推送到那里,或者..
git checkout master
git merge dev-branch
git push origin master
将您的更改从dev-master
合并到master
(因此master将包含所有来自dev-branch的提交),然后将master推送到GitHub。
答案 1 :(得分:1)
您收到此邮件的原因是您有未分期更改。
要将更改推送到服务器,您必须执行以下步骤:
阶段变更:这是告诉git跟踪某个文件的变化。您可以使用以下命令行执行此操作:git add -u <filename>
(-u
标志只添加已更新的文件,这要归功于o11c的提示!)
提交更改:将所有文件添加到舞台后,您需要使用git commit -m "A commit message here"
推送到服务器:现在运行git push origin master
一步到位:
# This adds all updated files in current folder to the stage,
# then commits with message and pushes to server
$ git add -u .; git commit -m "[YOUR MESSAGE HERE]"; git push origin master