Git push不会做任何事情(一切已经是最新的)

10 浏览
0 Comments

Git push不会做任何事情(一切已经是最新的)

我正在尝试更新GitHub上的一个Git仓库。我做了一些改动,添加了它们,提交了,然后尝试执行git push。响应告诉我一切都是最新的,但显然不是这样。\ngit remote show origin显示了我期望的仓库。\n为什么Git告诉我仓库是最新的,而本地提交在仓库上看不到呢?\n[searchgraph] git status\n#在分支develop上\n#未跟踪的文件:\n#(使用“git add …”将其包含在将要提交的内容中)\n#\n# Capfile\n# config/deploy.rb\n没有要提交的内容,但有未跟踪的文件(使用“git add”来跟踪)\n[searchgraph] git add .\n[searchgraph] git status\n#在分支develop上\n#要提交的更改:\n#(使用“git reset HEAD …”取消暂存)\n#\n# 新文件:Capfile\n# 新文件:config/deploy.rb\n#\n[searchgraph] git commit -m“添加Capistrano部署”\n[develop 12e8af7] 添加Capistrano部署\n 2个文件已更改,插入了26个插入(+),删除了0个插入(-)\n 创建了100644个Capfile\n 创建了100644个config/deploy.rb\n[searchgraph] git push\n一切都是最新的\n[searchgraph] git status\n#在分支develop上\n没有要提交的内容(工作目录干净)

0
0 Comments

当我们在使用Git进行push操作时,有时会遇到这样的提示信息:Git push won't do anything (everything up-to-date)。这个问题的出现原因是当前分支没有任何新的commit,所以Git认为仓库已经是最新的,不需要进行push操作。

要解决这个问题,可以尝试使用以下命令:git push origin HEAD:master。这条命令的作用是将当前分支推送到远程仓库的master分支。根据文档的解释,这个命令非常方便,可以在不考虑本地分支名称的情况下推送当前分支。

实际上,这个方法对我也起到了作用。但是为什么它有效呢?我对比了我的仓库配置,发现所有的分支看起来都是一样的。然而,在其中一个分支上,我无法简单地使用git push命令。所以我尝试了这个方法:git push origin HEAD:my_branch_name,结果也成功了。

总结起来,当遇到Git push won't do anything (everything up-to-date)的问题时,可以尝试使用git push origin HEAD:master命令来解决。这个命令的作用是将当前分支推送到远程仓库的master分支,无需考虑本地分支的名称。这种方法适用于当前分支没有新的commit时,Git认为仓库已经是最新的情况。

0
0 Comments

当SourceTree应用程序在暂存期间崩溃时,我遇到了这个问题。在命令行中,似乎之前的git add命令已经损坏了。如果是这种情况,请尝试以下操作:

git init
git add -A
git commit -m 'Fix bad repo'
git push

在最后一个命令中,你可能需要设置分支:

git push --all origin master

请记住,如果你没有进行任何分支操作,这就足够了。在这种情况下,请确保将代码推送到正确的分支,比如:

git push origin develop

这样,你应该能够解决问题。

0
0 Comments

在运行git push命令时遇到“Git push won't do anything (everything up-to-date)”的问题,可能出现的原因是没有将本地分支配置为推送到特定的远程分支。可以通过运行git remote show origin命令查看已配置为推送的本地分支。如果只在master分支上进行提交,那么简单的git push命令将始终将更改推送回去。但是,如果当前分支是develop,而develop分支没有配置为推送到任何远程分支,那么git push命令将不会推送该分支上的提交。

要解决这个问题,有两种方法:

1. 如果想要将develop分支的更改合并到本地的master分支中,然后再推送到远程的origin/master分支,可以执行以下命令:

git checkout master
git merge develop
git push

这将合并develop分支到master分支,并推送master分支的更改到远程。

2. 如果想要在远程创建一个名为develop的分支,并将其与本地的develop分支保持同步,然后将develop分支配置为自动推送到origin/develop,可以执行以下命令:

git push origin develop

这将在远程创建一个名为develop的分支,并将其与本地的develop分支同步,并配置develop分支自动推送到origin/develop

如果想要将本地的develop分支推送到一个名为something-else的远程分支,可以执行以下命令:

git push origin develop:something-else

这是一个一次性的操作,并不会配置develop分支将来始终推送到origin/something-else

总结一下,出现“Git push won't do anything (everything up-to-date)”的问题可能是因为未配置本地分支的推送设置。解决方法是根据需求选择合适的推送命令,将本地分支的更改推送到相应的远程分支。

0