远程SSH的Git GUI客户端解决方案

5kgi1eie  于 2023-04-28  发布在  Git
关注(0)|答案(4)|浏览(281)

我是Git GUI用户。我没有问题使用它为我的本地发展。但是,现在我们有一个带有Git存储库的服务器。我可以使用Git GUI客户端远程推送、拉取和比较吗?
目前,我正在SSHing到Linux服务器,并使用Git命令执行所有Git命令。但我发现当涉及到差异时很难。这就是为什么我认为有任何解决方案可以让我使用Git GUI客户端访问远程存储库并使用Git客户端执行Git命令。
我希望能够在Git仓库中挂载远程服务器。目前我们只需要打开本地磁盘中的Git仓库。例如,C:\www\repo。git file.如果我想访问www.example呢 www.example.com 并在Git客户端执行所有Git命令?
解决方案适用于OS X和Windows。

gywdnpxw

gywdnpxw1#

除了VNC/ remote X(这是一个显而易见的解决方案,因此不值得投入一个答案),我能找到的唯一替代方案是Visual Studio Code的新远程开发支持。
您可以通过ssh(从Visual Studio Code中)连接到服务器,然后Visual Studio Code的Git功能可以在本机工作。界面是相当基本的,但是-特别是没有历史视图,你不能变基,樱桃挑选,等等。从GUI。它基本上是用来进行提交的。
This extension提供了一个合适的git graph视图。很不错

twh00eeo

twh00eeo2#

如果您的服务器启用了它,您可以使用XForwarding在本地计算机上显示在远程计算机上执行的GUI。
在服务器端,这意味着您需要安装适当的工具(例如:例如,git-gui,这意味着您还需要安装Tcl/Tk,这意味着您还需要安装X基础设施)。
您还必须启用 Xforwarding,方法是确保您的/etc/ssh/sshd_config中有如下行:

X11Forwarding yes

要在本地Linux机器上使用它,通常需要使用-X标志来为给定的连接启用XForwarding

shiro@local:~$ ssh -X gituser@gitserver

 gituser@gitserver:~$ cd repo.git
 gituser@gitserver:~/repo.git$ git gui

在您的本地OS X机器上,您可以使用-Y

shiro@applejoice:~$ ssh -Y gituser@gitserver

 gituser@gitserver:~$ cd repo.git
 gituser@gitserver:~/repo.git$ git gui

您需要在本地计算机上运行Xserver,才能使用XForwarding。虽然这在Linux(或OS X)上不是问题,但对于Win32来说就变得复杂了。Web上有tutorials,用于在Win32下设置和使用Xserver(例如。例如,Xming)。

piok6c0g

piok6c0g3#

首先,当涉及到diff时,你可以简单地git获取你的repo,并在本地(使用git gui)进行diff,因为你有所有的历史记录。
其次,如果您拥有ssh访问服务器的权限,则不需要真正打开ssh会话。
一个简单的git command git@gitserver:/path/to/git/project.git就足够了(用clone/push/pull/fetch代替“command“)
这意味着提取很容易。
有关ssh设置,请参阅Git on the Server - Setting Up the Server,至少适用于Linux或Mac。
对于Windows,您可以考虑其他ssh服务器,如copssh-free-edition
但是现在我们的团队遇到了这个问题,我是GIT的唯一负责人。这就是为什么我寻求帮助如何解决这个问题
然后你需要ssh到服务器,在repo中git add和git commit,然后回到你的本地工作站,克隆或获取,并在那里执行diff。-

kmynzznz

kmynzznz4#

可以使用sshfs将远程路径挂载为本地机器文件路径

sshfs root@xxx.com:/root/yourpath /Users/xxxx/xxx

相关问题