<p>Hello,</p>
<p>I'm just beginning to work with Go this week and haven't been able to find a remote IDE yet. Does anyone use these with Go or have another good solution? Basically all of my work has to be done on a remote server that has access to hardware in our company lab. So working on a local copy then pushing it to the server isn't an option. I tried installing vim-go, (maybe I need to look into it more/tweak the settings?) but I'd really prefer something where I can begin typing and see what operations are possible, what they do, being able to click things and go to their deceleration, etc. Also visual debugging would be nice. I tried GoLand and liked it for local work, but it doesn't seem to have any remote support. </p>
<hr/>**评论:**<br/><br/>dlsniper: <pre><p>There is a Remote Hosts plugin which allows you to work locally and automatically synchronize your work to a server (via a number of connectivity options from FTP to SFTP). Go to Settings | Plugins | Install JetBrains plugin... | search for Remote Hosts Access.</p>
<p>You can see the documentation here: <a href="https://www.jetbrains.com/help/go/remote-host-tool-window.html" rel="nofollow">https://www.jetbrains.com/help/go/remote-host-tool-window.html</a></p>
<p>Hope this helps.</p></pre>BaconBytes42: <pre><p>ssh + vi?</p></pre>scottjbarr: <pre><p>I'm a fan of emacs, but the same concept applies. My editor works the same everywhere, local or remote.</p></pre>BaconBytes42: <pre><p>Emacs is nice. I still use it when I need to gdb something.</p></pre>scottjbarr: <pre><p>It's still my daily editor. It fits :)</p></pre>hell_0n_wheel: <pre><p>This. Leaning on your IDE to solve ALL your problems (including remote connectivity), you're going to run out of options very quickly. Solve your remote problem separate from your IDE problem, this is the way forward...</p></pre>ChristophBerger: <pre><p>Maybe <a href="https://code.visualstudio.com/" rel="nofollow">Visual Studio Code</a> plus the <a href="https://marketplace.visualstudio.com/items?itemName=rafaelmaiolla.remote-vscode" rel="nofollow">Remote VSCode extension</a> might meet your needs. You need to have an ssh connection to the server, and you need to be able (i.e., have the permission) to run a tool (rmate) on the server.</p>
<p>Disclaimer: I have not yet tried this myself yet.</p>
<p>VSCode does not come with a strictly <em>visual</em> debugger, but at least you can start Delve from within the UI, and see various info (locals, watchlist, call stack of each goroutine) while stepping through the code.</p>
<p>(Edit: typo)</p>
<p>Edited to add: Looks like rmate is only capable of serving one specific file at a time (specified when starting rmate). If someone knows a better option, I am all ears.</p></pre>kardianos: <pre><p>Look into
<a href="https://github.com/b3log/wide" rel="nofollow">https://github.com/b3log/wide</a></p></pre>shadowh511: <pre><p><code>emacs --daemon</code> and ssh?</p></pre>Nikon_NLG: <pre><p>Also, you can use tramp ( <a href="https://www.emacswiki.org/emacs/TrampMode" rel="nofollow">https://www.emacswiki.org/emacs/TrampMode</a> ) for remote edit</p></pre>carsncode: <pre><p>Can you provide any details on what the setup is? Based on the mention of vim-go I'm guessing this is Linux? Does it have X and/or VNC installed? My first choice would probably be to use a generic remoting solution to gain access to whatever IDE works best (personally I use VS Code in Linux with great success, but if you have generic remote desktop access you could use anything).</p></pre>gpdriver17: <pre><p>Sorry, should have mentioned that! The remote servers are running Linux, it has VNC installed, but they run really slow, so I'd prefer not to go that route.</p></pre>Franke123: <pre><p><a href="http://vim.wikia.com/wiki/Editing_remote_files_via_scp_in_vim" rel="nofollow">http://vim.wikia.com/wiki/Editing_remote_files_via_scp_in_vim</a></p></pre>deranjer: <pre><p>You could go full bore and install a web ide like codiad, eclipse chi, or something else and use it from a web browser (depends on your control of access to the firewall etc). I think there might be one or 2 new web ides being developed for golang specifically.</p></pre>colek42: <pre><p>I have been looking for this for a long time, long story short. I have not been able to find anything that comes close to a native experience (i.e. code completion, debugging). I ended up just pimping out vim and running it all over ssh. After about 3 weeks my productivity is as good or better then using vs code. A big bonus is that I can ditch my bulky machine and just use a chromebook when I am coding away from my desk.</p></pre>SpokenSpruce: <pre><p>Sshfs? It mounts a directory on the remote server in your file system over ssh. It's not good over long distances or slow lines, though, and if it's a git repo it could get painfully slow if there's git features in the IDE.</p></pre>GentooMonk: <pre><p><a href="https://www.nomachine.com" rel="nofollow">https://www.nomachine.com</a> + some light WM (awesome, fluxbox, etc) + vscode works fine for me.</p></pre>kostix: <pre><p>Can you explain why you need remote <em>editing</em> at all?</p>
<p>I mean, I can understand this for cases where a scripting language
(like, say, PHP / Python / Ruby / JavaScript) is used, and you'd like
to, say, apply some last-time fixups on the server side.</p>
<p>But Go is a compiled language; if you intend to use a loop
like edit → <code>go run *.go</code> → re-edit on your server, please
unlearn this right away ;-)</p>
<p>With Go, the approach is to edit everything locally,
use <code>go install</code> for building, test and then transfer the generated
<em>binary</em> program file to the server.</p>
<p>If your development platform is different from the server,
then either use cross-compilation such as</p>
<pre><code>$ GOOS=linux go build
</code></pre>
<p>and/or consider having a simple VM or a docker container to run tests.</p></pre>broady: <pre><p>I can explain: I do all of my development on a high powered Linux workstation, but physically access my workspace from multiple dumb terminals: MacBook, Mac Mini, Windows laptop.</p>
<p>I don't want to handle synchronization of both the code and environment across these physical machines.</p>
<p>The best solution I've found is ssh + iTerm + tmux raw mode + vim.</p>
<p>It has its flaws, though. Sometimes I wish I could use my mouse to navigate code, or just have a more graphical interface to browse, analyze, and write code.</p></pre>
这是一个分享于 的资源,其中的信息可能已经有所发展或是发生改变。
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码`
- 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传