igor@IgorReinCloud ~/dbhandler $ ssh igorkorot@192.168.1.3:/dbhandler/dbhandler < git pull
bash: git: No such file or directory
igor@IgorReinCloud ~/dbhandler $ git pull
remote: Counting objects: 4, done.
remote: Compressing objects: 100% (1/1), done.
remote: Total 4 (delta 3), reused 4 (delta 3), pack-reused 0
Unpacking objects: 100% (4/4), done.
From https://github.com/oneeyeman1/dbhandler
667ca95..4a93607 master -> origin/master
Updating 667ca95..4a93607
Fast-forward
libdbwindow/databasecanvas.cpp | 1 +
1 file changed, 1 insertion(+)
Run Code Online (Sandbox Code Playgroud)
这是否意味着我应该在git pull
内部创建某种脚本才能正确执行?还是我做错了什么?
[编辑]
我想要实现的是以下内容:
我在我的 Linux 机器上试图连接到我的一台 OSX 笔记本电脑 (192.168.1.3)。这台 Mac 笔记本电脑运行的是 OSX 10.8。直到最近一切都运行良好,但随后 GitHub 从使用 SSL 1.0 切换到 SSL 1.2 或类似的东西。当然,尝试从 OSX 执行远程操作现在失败了。
但是,如果我尝试在 Linux 上执行此操作,一切都会按预期进行,因为 Git/OpenSSL 的 Linux 版本较新,因此运行 git pull/fetch/push/etc 将成功。
所以我的最终目标是执行 git pull 从本地机器 (Linux) 执行 git 以更新位于远程机器 (OSX) 上的存储库。
我希望现在清楚我想要实现的目标。
[/编辑]
<
是一个将文件重定向为输入的运算符。git pull
是一个命令,而不是一个文件。你可以这样做:
echo "git pull" | ssh igorkorot@192.168.1.3:/dbhandler/dbhandler
Run Code Online (Sandbox Code Playgroud)
或者正确的方法:
ssh igorkorot@192.168.1.3:/dbhandler/dbhandler git pull
Run Code Online (Sandbox Code Playgroud)
看看可能的调用man ssh
:
ssh (...) [用户@] 主机名 [命令]
你在那里有一个可选的命令。
我想知道您的命令是否不需要额外的修复:
ssh igorkorot@192.168.1.3 bash -c "cd /dbhandler/dbhandler && git pull"
Run Code Online (Sandbox Code Playgroud)
^ 我认为执行命令时您的路径不应该存在。有了bash -c "some-commands"
你可以规避这一点。
编辑:
经过澄清,似乎一个很好的解决方案是在 Linux 机器上安装 Mac 的项目文件夹并git
在那里使用,同时在 Mac 上做其他所有事情。您可以使用SSHFS
:https : //www.digitalocean.com/community/tutorials/how-to-use-sshfs-to-mount-remote-file-systems-over-ssh
我的首选解决方案是升级 Mac 的 git,使其支持 SSL 1.2。如果 Mac 还没有更新,你可以尝试自己编译并安装编译后的版本。
归档时间: |
|
查看次数: |
450 次 |
最近记录: |