首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >推送到非裸Git存储库。

推送到非裸Git存储库。
EN

Stack Overflow用户
提问于 2018-03-27 05:15:40
回答 2查看 0关注 0票数 0

我通常通过ssh(屏幕和vim)在远程服务器上工作,在那里我有一个Git存储库。有时我不在网上,所以我在笔记本上有一个单独的存储库(从我的遥控器上克隆)。

但是,我不能从远程存储库中提取,因为我通常在防火墙后面,或者我没有公共IP。

我已经读到,我应该直接推到一个空荡荡的存储库中。然后如何将更改推送到远程存储库?

EN

Stack Overflow用户

发布于 2018-03-27 14:42:40

最佳选择

也许,最干净、最不容易混淆、最安全的方式是将你的非裸远程存储库推送到表示你的膝上型计算机分支的远程专用分支中。

代码语言:txt
复制
git push origin master:laptop-master

这意味着本地主分支将被推送到远程存储库中名为“膝上型计算机-主”的分支。在你的远程回购,将有一个新的分支名为“笔记本-主人”,然后可以合并到你的远程主机,当你准备好了。

备选方案

也有可能只推主人->主人,但推到当前签出分支的非裸回购通常是不推荐的,因为如果你不了解发生了什么,它可能会混淆。这是因为推到签出分支不会更新工作树,所以检查git status在被推入的签出分支中,将显示与最近推出的完全相反的差异。如果工作树在完成推送之前是脏的,这将特别令人困惑,这也是不建议这样做的一个重要原因。

如果想尝试只按master->master,那么命令是:

代码语言:txt
复制
git push origin

但是当你回到远程回购系统时,你很可能会想做一个git reset --hard HEAD若要使工作树与被推送的内容同步,请执行以下操作。这可能很危险,因为如果有未承诺您希望保留的远程工作树中的更改将消除它们。在尝试之前,一定要知道这会带来什么后果,或者至少先做一个备份!

票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100003710

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档