如何使用网盘托管git项目
话说近年来git已经成为项目源代码管理的标准工具,有不少免费托管网站可供使用,详情参考这篇文章:
http://www.cnblogs.com/zdz8207/archive/2012/05/20/2509356.html
对于个人开发的小项目,可能因太成熟、不想开源、觉得不安全等因素,不太愿意动用上述工具,本文给出一种基于同步网盘的git托管方案,可满足上述需求。
这种方法我是最早从codeproject上看到的:
http://www.codeproject.com/Tips/656476/git-and-Dropbox-Integration-within-Visual-Studio
上述文章采用Git-preview命令行模式实现,鉴于GUI操作更方便,在此,本人用【网盘同步盘】+【TortoiseGit】来完成Windows下的git项目托管,满足实现异地、多人协作要求。
一、准备工作
1)了解git的相关操作(commit、push、pull),如果一点都不了解,放心,按照本文内容做一遍,你就会有一个感性认识。
1)申请具有同步盘功能的网盘,比如百度、360、OneDrive、Dropbox等,下面仅以百度同步盘为例,其它网盘操作基本一样。
2)下载并安装如下软件:
(1)百度同步盘:http://pan.baidu.com/download
(2)TortoiseGit:http://download.tortoisegit.org/
3)设置好同步盘的本地文件夹,例如 X:\Yun
二、创建git仓库(respository)
如果项目已经创建过了,直接跳到第三步。
1)在文件管理器中切换到项目所在文件夹,如:E:\MyProjects\HelloWorld
2)在空白处单击右键,在弹出菜单中单击【Git Create repository here ...】,如下图所示
4)在弹出的对话框中单击【OK】,注意不要选择【Make it Bare】,这个选项后面会用到。
5)在不需要git托管的文件和文件夹上鼠标右键,按如下图方式添加到忽略列表(ignore list)中
6)在空白处单击右键,选择【commit】菜单,按如下方式完成首次 commit
三、在网盘同步文件夹中创建空仓储
1)定位到网盘同步文件夹 X:\Yun
2)新建一个文件夹用于存放项目仓储文件,如:X:\Yun\HelloWorld.git
3)切换到上述 X:\Yun\HelloWorld.git 文件夹
4)在空白处单击右键,在弹出菜单中单击【Git Create repository here ...】,在弹出的对话框中选中【Make it Bare】,单击【OK】完成,如下图所示
四、将同步盘文件夹中仓储文件夹设置为项目远程仓储
1)在文件浏览器中切换到项目所在文件夹(E:\MyProjects\HelloWorld),在空白处鼠标右键,选择【TortoiseGit】->【Settings】菜单,如下图所示:
2)在弹出的对话框中的左侧树形列表中选择【Git】->【Remote】,在右边的设置框中设置名称(Remote)、URL(设置为同步盘文件夹中的仓储地址),单击OK完成,如下图所示:
五、完成首次Push,将项目推送到远程仓储
在文件浏览器中切换到项目所在文件夹(E:\MyProjects\HelloWorld),在空白处鼠标右键,选择【TortoiseGit】->【Push】菜单,如下图所示:
六、使用同步盘的同步功能,将本地文件夹同步到网盘
七、如何在其它计算机上使用上述git完成项目开发
1)安装上述同步盘和TortoiseGit客户端
2)使用相同的网盘账号将网盘内容同步到计算机的文件夹,注意要确保 HelloWorld.git 被同步。假设同步文件夹为:F:\Yun
3)在计算机上新建文件夹用于存放项目文件,如:D:\HelloWorld
4)切换到上述文件夹,鼠标右键选择【Git Clone...】菜单,设置URL为:F:\Yun\HelloWorld.git,单击OK完成,如下图所示
八、不同计算机间的协作
在计算机上完成修改后,可通过【commit】->【Push】->【网盘同步】 三个步骤来实现提交;
在需要同步的计算机上,通过 【网盘同步】->【Pull】两个步骤实现下载更新。
最后,如果需要多人协作,可以公用一个账号。注意,不要轻易泄露自己网盘用户名和密码。
如何使用网盘托管git项目的更多相关文章
- 用yunio网盘搭建git私有仓库
研究生开始奔波于教研室和寝室之间,于是想搭建一个git私有仓库来管理自己在做的项目或者学习资料.一来可以很方便的管理项目,二来可以学习使用git.我的主要工作平台是Linux,这也是我选择yuni ...
- 一键部署基于GitLab的自托管Git项目仓库
https://market.azure.cn/Vhd/Show?vhdId=9851&version=11921 产品详情 产品介绍GitLab https://about.gitlab.c ...
- 百度网盘web端项目总结
项目背景 网盘作为一个在线备份存储,共享文件的工具类产品,给人们的工作和生活带来了很大的帮助和便利.百度网盘是目前国内使用量最大的网盘产品,至今发展已有4年,总用户数超4亿,为了让用户有着更好的使用体 ...
- 使用快盘托管Git库
Dropbox非常好用.可是我如今也没弄明确究竟哪里好用了.不如试试中国的金山快盘..起码不会操心被墙. cd ~/Kuaipan/repo git --bare init //初始化仓库 cd ~/ ...
- 百度网盘kbengine - warring项目下载地址
http://pan.baidu.com/s/1k4J4y 下载解压之后,请看<<使用说明.doc>>,有更新指导
- 使用百度网盘+Git,把版本控制托管到云端
之前公司的一个项目使用SVN来做的版本控制,服务器设在我这台电脑上.然后是出于某些原因,我的电脑IP变了多次,每变一次就要重新绑定静态ip,甚是烦人.同时SVN这种集中式的版本控制服务在我关闭了我的电 ...
- 使用百度网盘+Git,把版本控制托管到云端,附精彩评论
http://www.cnblogs.com/vajoy/p/3929675.html 我试过多个这种双向同步的网盘,在网络状况不好.系统卡顿以及某些程序BUG的情况下,同步会有错乱现象,尤其是多个电 ...
- 使用百度云同步盘和Git Extensions进行代码托管
一.软件安装 百度云同步盘和Git Extensions的安装和配置略过. 二.建立Git代码库,以[GHO2VMDK转换工具]项目为例 1. 建立本地代码库 进入[GHO2VMDK转换工具]项目文件 ...
- 使用网盘(Dropbox/Google Drive)同步Git仓库
还在使用老掉牙的U盘搬运代码(文件)的方式,从一台机器上复制后,粘贴到另一台机器上?太Out了.使用Github 倒是一个非常不错的替代方法.但无论是基于什么理由都有可能不想把代码公开(毕竟Githu ...
随机推荐
- GSON
{ "data": [ { "children": [ { "id": 10007, "title": "北京 ...
- android studio导jar包找不到类的解决方法
今天更新了universal-image-loader-1.9.5.jar文件,studio死活找不到其中相关的类,上网百度试了很多办法,总算解决了,具体方法跟一篇老外的帖子的差不多,这里分享下. 解 ...
- 20135202闫佳歆--week 8 进程的切换和系统的一般执行过程--学习笔记
此为个人笔记存档 week 8 进程的切换和系统的一般执行过程 一.进程调度与进程切换 1.不同的进程有不同的调度需求 第一种分类: I/O密集型(I/O-bound) 频繁的进行I/O 通常会花费很 ...
- 结合php ob函数理解缓冲机制
对于一个刚刚入门的php程序员来说,php缓冲区是几乎透明的.在他们心目中,一个echo print_r 函数,数据便会‘嗖’的一声飞到浏览器上,显示出来.我也一直如此单纯地认为. 其实,在技术的世界 ...
- 你会swap吗,按值传递还是按引用?
问题 1.Java到底是按值传递(Call by Value),还是按引用传递(Call by Reference)? 2.如下面的代码,为什么不能进行交换? public CallBy swap2( ...
- 重写TiledServiceLayer实现Arcgis访问Mapabc地图服务 (转载)
package com.baixin.main;/** * * @ClassName: MapAbcToArcGISTLayer * @Description: ArcGIS访问MapAb ...
- [bzoj 2431][HAOI2009]逆序对数列(递推+连续和优化)
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=2431 分析: f(i,j)表示前i个数字逆序对数目为j时候的方案数 那么有f(i,j) ...
- 第十八课:js样式操作需要注意的问题
样式分为,外部样式(<link />),内部样式(<style></style>),行内样式(style:).再加上一个important对选择器权重的干扰. 大体 ...
- 每天一个linux命令(12):head 命令
head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head 用来显示档案的开头至标准输出中,而 tail 想当然尔就是看档案的结尾. 1.命令格式: hea ...
- jQuery 选择器语法
jQuery选择器分为如下几类(点击“名称”会跳转到此方法的jQuery官方说明文档): 1. 基础选择器 Basics 名称 说明 举例 #id 根据元素Id选择 $("divId&quo ...