Git - 将克隆中的变化回复到主站 [英] Git - pulling changes from clone back onto the master

查看:112
本文介绍了Git - 将克隆中的变化回复到主站的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我克隆了一个Git master,并对该克隆做了很多修改。我已经在克隆上进行了这些更改,现在希望主人能够成为克隆副本上的副本。



我试过Git推送克隆将更改推送给主服务器 - 但我没有更新主服务器。



如何让主服务器获得克隆上内容的完整副本?什么是更新克隆的命令工作流,并使克隆主同步?

解决方案

有两种git仓库,裸露和不裸露。非裸仓库是任何具有工作副本的仓库,即仓库的一部分当前已签出。



您可以 一个非裸仓库,但它不会更新签出的工作副本,即使签出的分支与您推送的分支相同。这是因为签出的副本可能有未提交的更改,并且git不会在没有明确询问的情况下销毁更改(通常此类命令有--hard参数)。

阅读为什么在git push之后我无法看到远程回购的更改? ?我如何使用git push来同步出防火墙主机?以获取问题和潜在解决方案的完整说明。警告词,如果你已经推入远程仓库,那么远程仓库中的任何未提交的更改都必须被废弃。



通常听起来像你想要的方法并没有真正被gitters采用,因为它并不能真正匹配分布式存储库的心态。您自己有责任确保您的回购副本是最新的。


I cloned a Git master and made a lot of changes on the clone. I have since committed these changes on the clone and now want the master to be a carbon copy of what is on the clone.

I've tried Git push on the clone to push the changes to the master - but nothing I do updates the master.

How can I make the master an exact copy of what is on the clone? What is the command workflow of updating the clone and having the master sync with the clone?

解决方案

There are 2 kinds of git repository, bare and non-bare. A non bare repository is any repository which has a 'working copy' i.e. some part of the repository currently checked out.

You can push into a non-bare repository, but it won't update the checked out working copy even if the checked out branch is the same as the branch you pushed. This is because the checked out copy might have changes that aren't committed, and git won't ever destroy changes without you explicitly asking (usually such commands have a --hard argument)

Read Why won't I see changes in the remote repo after "git push"? and How would I use "git push" to sync out of a firewalled host? for a full description of the problem and a potential solution. Word of warning, if you've pushed into a remote repo, any non-committed changes in that remote-repo will have to be discarded.

Generally it sounds like the approach you want isn't really adopted by gitters, because it doesn't really match the distributed repository mentality. It's your own responsibility to make sure your copy of the repo is up to date.

这篇关于Git - 将克隆中的变化回复到主站的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆