Java 推而不拉

Java 推而不拉,java,git,github,push,pull,Java,Git,Github,Push,Pull,我正在和我的同学做一个学校项目,其中一个同学破坏了项目的主要部分,他把它推到了github。我有没有修改的主要项目,它的工作完美。有没有什么方法可以让我在不进行拉取的情况下推送我的文件,并用我的文件替换坏的文件?如果其他开发人员推送了相关的更改,您不应该只删除它们,而应该合并两个更改 如果开发人员推动了其他有意义的更改,那么最好的解决方案就是解决冲突,并修复损坏的代码 从发散的提交中,将它们移动到新的分支,然后合并回主解决冲突 #使用提交创建新分支 git签出-b功能分支 #从原点获得大师 切换

我正在和我的同学做一个学校项目,其中一个同学破坏了项目的主要部分,他把它推到了github。我有没有修改的主要项目,它的工作完美。有没有什么方法可以让我在不进行拉取的情况下推送我的文件,并用我的文件替换坏的文件?

如果其他开发人员推送了相关的更改,您不应该只删除它们,而应该合并两个更改

如果开发人员推动了其他有意义的更改,那么最好的解决方案就是解决冲突,并修复损坏的代码

从发散的提交中,将它们移动到新的分支,然后合并回主解决冲突

#使用提交创建新分支
git签出-b功能分支
#从原点获得大师
切换到主分支
git拉源主机
#添加您的更改
git合并特性分支
#解决冲突
#推回原点
git推送源主机

如果你真的想删除他的提交(,我不建议你这么做,),你可以强制推送-这将用你机器上的内容覆盖服务器上的所有内容

每个其他开发人员谁是工作的项目将需要采取额外的行动在那里结束,因为你现在正在改变历史;不建议这样做

git推送原始主机--force

还有一种方法,;这将创建一个新的提交,该提交完全反转所选提交的更改;要使用它,首先需要一个干净的工作树

#将提交移动到新分支
git签出-b功能分支
#从master获取最新的更改
切换到主分支
git拉源主机
#创建新的提交,以反转其他devs更改
git还原哈希还原
#加入你的额外提交
git合并特性分支
#推演大师
git推送源主机

如果另一个开发人员推动了相关的更改,那么您不应该只删除它们,而应该合并到两个更改中

如果开发人员推动了其他有意义的更改,那么最好的解决方案就是解决冲突,并修复损坏的代码

从发散的提交中,将它们移动到新的分支,然后合并回主解决冲突

#使用提交创建新分支
git签出-b功能分支
#从原点获得大师
切换到主分支
git拉源主机
#添加您的更改
git合并特性分支
#解决冲突
#推回原点
git推送源主机

如果你真的想删除他的提交(,我不建议你这么做,),你可以强制推送-这将用你机器上的内容覆盖服务器上的所有内容

每个其他开发人员谁是工作的项目将需要采取额外的行动在那里结束,因为你现在正在改变历史;不建议这样做

git推送原始主机--force

还有一种方法,;这将创建一个新的提交,该提交完全反转所选提交的更改;要使用它,首先需要一个干净的工作树

#将提交移动到新分支
git签出-b功能分支
#从master获取最新的更改
切换到主分支
git拉源主机
#创建新的提交,以反转其他devs更改
git还原哈希还原
#加入你的额外提交
git合并特性分支
#推演大师
git推送源主机

您可能可以使用
git revert
命令还原该提交。这将执行一个新的提交,该提交将撤消以前提交的所有更改,文档:

git revert命令撤消提交的快照。但是, 从项目历史记录中删除提交后,它将了解如何 撤消提交引入的更改并追加新的提交 使用生成的内容


完成后,您可以将自己的更改推到已还原的提交之上。

您可能可以使用
git revert
命令还原该提交。这将执行一个新的提交,该提交将撤消以前提交的所有更改,文档:

git revert命令撤消提交的快照。但是, 从项目历史记录中删除提交后,它将了解如何 撤消提交引入的更改并追加新的提交 使用生成的内容

完成后,您可以将自己的更改推送到已恢复的提交之上