用于远程SSH的GIT GUI客户端的解决方案

时间:2015-10-23 15:08:11

标签: linux git ssh

我是GIT GUI用户。我没有在我的本地开发中使用。但是,现在我们有一个带GIT仓库的服务器。我想通过使用GIT GUI客户端访问它来了解我可以远程推送,拉取和差异的任何解决方案吗?

Currenly。我是Linux服务器的SSH,并使用git命令执行所有git命令。但是我发现差异很困难。这就是我认为使用GIT GUI客户端访问远程仓库并使用GIT客户端执行GIT命令的原因。

我想要的是能够在GIT仓库中安装远程服务器。 目前我们只在本地磁盘中打开GIT仓库。例如C:\ www \ repo.git文件,我想如何访问10.10.10.10/home/www/.git并在GIT客户端中执行所有GIT命令。

为OSX和Windows打开解决方案。

3 个答案:

答案 0 :(得分:2)

首先,当涉及到diff时,你可以简单地git获取你的repo,并在本地进行diff(使用git gui),因为你拥有所有的历史记录。

其次,如果您对服务器有ssh访问权限,则不需要实际打开ssh会话。

一个简单的git command git@gitserver:/path/to/git/project.git就足够了(重复" command"克隆/推/拉/提取)
这意味着获取很容易。

有关ssh设置的信息,请参阅Git on the Server - Setting Up the Server,至少对于Linux或Mac 对于Windows,您可以考虑使用备用ssh服务器,例如copssh-free-edition

  

但是现在我们的团队遇到了这个问题,而且我是唯一负责GIT的人。这就是为什么我寻求帮助如何解决这个问题的原因

然后你需要ssh到服务器,git add和git在repo中提交,然后回到你的本地工作站,克隆或获取,并在那里做差异。 -

答案 1 :(得分:0)

如果您的服务器已启用它,您可以使用XForwarding显示在本地计算机上的远程计算机上执行的GUI。

在服务器端,这意味着您需要安装正确的工具(例如git-gui,这意味着您还需要安装tcl/tk,这意味着您还需要X 1}}安装基础设施)。 您还必须启用 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

在本地OSX计算机上,您将使用-Y

 shiro@applejoice:~$ ssh -Y gituser@gitserver
 gituser@gitserver:~$ cd repo.git
 gituser@gitserver:~/repo.git$ git gui

您需要在本地计算机上运行Xserver才能使用XForwarding。虽然这在linux(或OSX)上不是问题,但对W32来说却很复杂。网络上有tutorials用于在W32下设置和使用Xservers(例如Xming

答案 2 :(得分:0)

除了VNC /远程X(这是一个很明显的解决方案,因此不值得回答)之外,我唯一能找到的就是Visual Studio Code的新远程开发支持。

您可以通过ssh(从VSCode内部)连接到服务器,然后VSCode的git功能可以本机运行。但是,该界面是相当基本的-特别是没有历史视图,您不能从GUI进行变基,自动选择等。基本上是用于暂存提交。