如何同步windows和Linux上的代码

本人做后台开发,编译和运行的环境都是Linux(非桌面版)。但是写代码是在windows上进行的。有没有一种好的办法能将windows上的代码实时同步到linux服务器上?
之前试过两种办法:
1.在linux上配置samba服务,将某个目录下的文件映射为windows上的网络硬盘,然后用source insight查看代码。所有修改都是在Linux服务器上,windows只相当于提供了可视化的环境。但是如果win上的svn和linux服务器上的svn版本有所不同的话,很容易造成版本控制错误;并且公司的服务器也不允许随便装软件或者服务
2、使用good sync同步。使用其提供的sftp(底层使用跟ssh),其默认的端口是22,但公司的服务器ssh服务端口不是22,软件总是提示无法连接到服务器,该软件能设置sftp的端口吗?

根据一些朋友的回复,我作如下说明:
我想做的事情就是:代码在linux编译服务器A上,是用svn从代码存储服务器B(另一台服务器)上co下来的,我没有往代码存储服务器B上提交的权限。我想在windows下查看和编写编译服务器A下的代码(cpp代码)

分割线~

你们的意思是让我另外拷贝一份代码到编译服务器A上,然后建个仓库,然后让我用windows从编译服务器A上把代码co下来吗?
有没有更快捷一点的办法?实时同步的那种?

阅读 8.7k
7 个回答

我一般会是在服务器上建立一个svn服务器,然后windows开发后,同步到服务器,然后Linux拉一下代码就好了。

可以有以下几种推荐的选择:(都是基于git,部分也可支持svn)

  • 国外

Github:公开的项目,私有是要收费的。
Gitlab:可以免费创建私有和公开的项目。

  • 国内

码云:可以免费创建私有和公开的项目。
Coding:可以免费创建私有和公开的项目。

github或bitbucket都能满足你

同步最好github。
还有比较老的方法,以前做项目用过~Xmanager系列能满足,不过风险高且不利于代码管理。个人用挺好的~

用git 岂不是更方便

做php等web相关开发的。
开发过程中我是使用 bcompare,走 ssh/sftp 做同步。
部署过程一般都是压缩成一个压缩包复制到服务器再解压,手动给权限。如果量大的话写shell脚本。

对需要编译的开发不是很了解,感觉如果是个人环境的话:

我以前公司的集团环境是放在一起的,每天要定时提交,定时打包,不作自动同步

统一回复各位,公司的代码统一用svn管理的,同时用两个VCS会不会有问题?