相关疑难解决方法(0)

如何将修改后的提交推送到远程Git存储库?

当我使用我的源代码工作时,我做了我惯常的事情提交,然后我推送到远程存储库.但后来我注意到我忘了在源代码中组织我的导入.所以我做了修改命令来替换以前的提交:

> git commit --amend
Run Code Online (Sandbox Code Playgroud)

不幸的是,提交不能被推回到存储库.这被拒绝了:

> git push origin
To //my.remote.repo.com/stuff.git/
 ! [rejected]        master -> master (non-fast forward)
error: failed to push some refs to '//my.remote.repo.com/stuff.git/'
Run Code Online (Sandbox Code Playgroud)

我该怎么办?(我可以访问远程存储库.)

git git-amend git-commit

624
推荐指数
14
解决办法
36万
查看次数

Git:推动修改后的提交

我目前正在开发一个项目,并在两个不同的位置使用机器来完成它.我已经为我正在处理的功能创建了一个分支,当我完成一些工作时,我将我的提交修改为该分支并将其推送到服务器,以便我可以从我在其他机器上停下的地方拿起.

当我尝试发送修改后的提交时,它会拒绝我的推送.我认为这是因为我推动了一个旨在破坏功能分支的当前HEAD的提交.我通常只使用--force.

有一个更好的方法吗?

mike@sleepycat:~/projects/myproject$ git pull origin topx
From heroku.com:myproject
 * branch            topx       -> FETCH_HEAD
Already up-to-date.
mike@sleepycat:~/projects/myproject$ git add app/models/reward.rb
mike@sleepycat:~/projects/myproject$ git commit --amend
[topx 82a9880] Added topX reward
 9 files changed, 106 insertions(+), 21 deletions(-)
 rewrite app/views/ceo/_reward_criteria.html.erb (96%)
 create mode 100644 public/javascripts/jquery.multiselect.min.js
 create mode 100644 public/site/javascripts/jquery.multiselect.min.js
 create mode 100644 public/stylesheets/jquery.multiselect.css
mike@sleepycat:~/projects/myproject$ git push origin topx
To git@heroku.com:myproject.git
 ! [rejected]        topx -> topx (non-fast-forward)
error: failed to push some refs to 'git@heroku.com:myproject.git'
To prevent you from losing history, non-fast-forward …
Run Code Online (Sandbox Code Playgroud)

git

9
推荐指数
1
解决办法
1万
查看次数

标签 统计

git ×2

git-amend ×1

git-commit ×1