首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Git软件(例如Gitbox、Github、SourceTree)可以使用远程存储库而不是本地存储库吗?

Git软件(例如Gitbox、Github、SourceTree)可以使用远程存储库而不是本地存储库吗?
EN

Stack Overflow用户
提问于 2012-10-17 03:01:57
回答 4查看 6.3K关注 0票数 6

我喜欢使用Git软件来推送提交,但我使用的那些(Gitbox,Github,SourceTree)在添加新的repo时都要求本地repo。

问题是,我的repo在我的开发服务器上,而不是我的本地机器上。

那么Git软件是否可以使用远程Git存储库作为开发存储库,然后将其推送到您的主存储库(例如Github或Bitbucket)?

否则,您似乎无法使用该软件,只能求助于SSH上的命令行。

谢谢

EN

回答 4

Stack Overflow用户

发布于 2012-10-17 03:36:47

一种不依赖于前端来支持直接操作远程存储库的解决方案是将远程存储挂载为网络文件系统。如果您只能通过SSH访问远程计算机,可以尝试通过FUSE使用SSHFS (在Linux上)或在Mac上使用OSXFUSE。或者,根据您的偏好和设置,可以使用SMB、NFS、DAV或其他网络文件系统。

我在注释中提到的另一种方法是将网络文件系统从开发机器导出到服务器。我这样做是为了可以一次在多台机器上挂载我当前的工作副本,并且即使我没有连接到服务器,我仍然可以拥有我的本地工作副本。

您可以这样写:

我很惊讶git软件不能作为工作版本来处理远程repos。

大多数Git通过调用git命令来完成一些工作。为了让它们支持远程操作,核心Git也必须支持。它是用C和shell脚本混合编写的;所有这些都必须重写以处理远程文件。

文本编辑器的工作要简单得多;它在你打开文件时读取一个文件,在保存文件时写入文件,而Git在像commit这样的单一操作过程中读取和写入许多文件。

联网的文件系统意味着所有工具(Git或其他工具)都可以处理您的远程文件。不是在每个应用程序中构建一个层来支持网络文件访问,而是在内核中(或通过FUSE)这样做,然后像对待本地文件系统一样对待它,在每个应用程序中免费提供这种支持。

票数 6
EN

Stack Overflow用户

发布于 2013-07-12 02:47:17

记住,Git是一个DVCS。事实上,您不需要连接到远程服务器来提交内容,这是设计好的。

您要做的是让本地Git repos将代码推送到您的集成服务器(实际运行代码的服务器)。这就像部署,只是您将部署到测试服务器而不是生产服务器。

这通常是通过拥有一个共享的Git库来实现的。这个repo should be bare。除了纯共享repo之外,您还需要一个共享Git repo的非裸克隆,它将用作您的Apache docroot。

当共享存储库接收到提交时,它将使文档根存储库执行git pull

这可以通过在共享存储库上使用post-receive hooks来实现。

文档根存储库是在特定分支上签出的(假设是develop)。因此,即使您将内容提交到其他分支并推送它们,服务器也不会受到影响。

这允许您设置多个部署存储库,因此您可以有另一个分支prod与其中一个分支相关联,当您将内容推送到其中一个分支时,这些分支将实际更新生产代码。

它还允许您在根本不部署的共享分支上存储未完成/正在进行的工作,这样您就知道您在笔记本电脑上工作的东西在共享repo上是安全的,即使它不能被发送到测试服务器,因为它不完整,会破坏测试服务器,使其他人无法工作或其他什么。

This article详细介绍了如何设置所有这些。我以前也这么做过,效果很好。

票数 2
EN

Stack Overflow用户

发布于 2013-06-21 02:49:35

我为自己找到了一个简单的方法:在Transmit (FTP客户端)中,有一个“将收藏夹挂载为磁盘”的选项。对于这个“虚拟”磁盘,SourceTree可以按预期工作。

但是有一个限制:只有在代码中进行了所有更改并准备好提交/推送之后,才能挂载磁盘并启动SourceTree。如果您在处理代码时保持挂载SourceTree和ssh磁盘,那么它将无法工作。由于某些原因,Transmit挂载的磁盘不会实时更新文件内容,而只是在卸载/挂载操作之后才会更新。

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

https://stackoverflow.com/questions/12921674

复制
相关文章

相似问题

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