让SourceTree也能Export文件

转载 2016年06月01日 15:39:27

从SVN转到SourceTree,在想导出几个提交版本所牵涉到的文件时, 一定会怀念SVN的Export功能。 怎么让SourceTree也有这个功能呢?

看看在TortoiseSVN里面怎么做的:

1. Show Log

2. 选择想导出的那些个Revision

3. 选择想导出的那些个文件

4. 在文件上右键, Export...


到了SourceTree里面, 我可怎么也找不到Export的命令。
好在最新版本的SourceTree支持Custom Action。 这样我们就能自己编写Export命令了。

以下是windows的bat命令, 储存为export.bat。 linux下的请按图索骥


@set export_php="C:\work\git-export\export.php"
@set export_dir="C:\WWW\export"
@set source_files=%*
@rmdir %export_dir% /s/q
@mkdir %export_dir%
@php %export_php% %source_files%
@explorer %export_dir%


以下是export.php

    <?php

    date_default_timezone_set('Asia/Shanghai');

    if($argc == 0)

    {

        exit('Nothing to copy');

    }

    define('DS', DIRECTORY_SEPARATOR); // I always use this short form in my code.

    $source_dir 'E:'.DS.'projects'.DS.'sia'.DS.'sia';

    $exp_dir 'E:'.DS.'projects'.DS.'sia'.DS.'export';

    function ExportOneFile($path)

    {

        global $source_dir,$exp_dir;

    

        $final_source $source_dir.DS.$path;

        $final_dest $exp_dir.DS.$path;

    

        $final_dest_dir = dirname($final_dest).DS;

        if(!is_dir($final_dest_dir))

        {

            mkdir($final_dest_dir,0777,true);

        }

        return copy($final_source,$final_dest);

    }

    

    foreach($argv as $index=>$path)

    {

        if($index === 0)

        {

            continue;

        }

        if(ExportOneFile($path))

        {

            echo $index.' : '.$path." exported\n";

        }

    }

    

    echo "All Complete. Please go to $exp_dir to view files";

 

请修改这几个变量指向的路径:

export_php // export.php所在的位置

export_dir // 输出目录所在的位置

$source_dir // 项目文件所在的位置 -- SourceTree所掌控的目录

$exp_dir    // 输出目录所在的位置

 

最后, 在SourceTree,选择 Tools=>Options=>Custom Actions=>Add

Script to run 就是那个bat的位置。

ok即可。

 

以后只需要选择相关的commit, 选择相关的文件。 然后选择Actions=》Custom Actions=》Export... 即可。

 

导出完毕后, 会自动打开export文件夹。 挺方便的。

 


SourceTree的使用

1、从Git服务器上获取项目 2、提交我的修改项目 3、发布新版本 4、修复bu...
  • wonghoman
  • wonghoman
  • 2016年01月26日 09:53
  • 2400

怎样用sourceTree将自己本地的项目上传到github网站上

前言:GitHub 是基于 Git 的一个代码托管网站。开发者可以将代码在 GitHub 上开源,可以浏览其它项目的代码。 准备工作:1、github网站账号。2、sourceTree软件。 ...
  • z4909801
  • z4909801
  • 2017年02月28日 15:01
  • 2961

Mac 下使用sourcetree操作git教程

SourceTree 是 Windows 和Mac OS X 下免费的 Git 和 Hg 客户端,同时也是Mercurial和Subversion版本控制系统工具。支持创建、克隆、提交、push、pu...
  • qq754406613
  • qq754406613
  • 2015年02月08日 14:31
  • 7943

借助SourceTree使用Github(四) 修改过的本地项目提交到Github

前面我们将一个只含有readme文件的项目克隆到了本地,接下来我们修改这个readme文件,并将它上传到Github上,使Github上的文件与本地一致。 1)修改README.md文件,以便我们...
  • v_xchen_v
  • v_xchen_v
  • 2016年12月14日 14:56
  • 1339

Git与SourceTree使用详细指南

http://blog.csdn.net/risky78125/article/details/50850545 http://blog.csdn.net/risky78125/ar...
  • u011904605
  • u011904605
  • 2016年07月16日 23:07
  • 8034

借助SourceTree使用Github(一) 配置帐号

SourceTree APP 官网使用指南地址: https://confluence.atlassian.com/bitbucket/tutorial-learn-sourcetree-with-b...
  • v_xchen_v
  • v_xchen_v
  • 2016年12月14日 10:45
  • 11887

用SourceTree轻巧Git项目图解

用SourceTree轻松Git项目图解 这篇文档的目的是:让使用Git更轻松。 看完这篇文档你能做到的是: 1、简单的用Git管理项目。 2、怎样既要开发又要处理发布出去的版本bug情况。 ...
  • cdan134
  • cdan134
  • 2016年10月11日 00:21
  • 466

sourceTree工具git和gitlab协同使用

sourceTree工具git和gitlab协同使用
  • fyj568213959
  • fyj568213959
  • 2016年09月09日 16:09
  • 1158

Git专题--sourceTree介绍与使用

环境:  Mac OS X Yosemite 软件: SourceTree 1.下载安装SourceTree 2.sourceTree设置中添加用户 3.新仓库—从...
  • JackJia2015
  • JackJia2015
  • 2016年04月13日 09:50
  • 4587

SourceTree 忽略文件设置

【原文 http://www.tuicool.com/articles/YnuYFz】 7.实际运用时遇到的一些问题: 7.1.克隆到本地时老是提示路径不合法,则可能是sourcetree...
  • u010179725
  • u010179725
  • 2016年01月19日 15:58
  • 12961
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:让SourceTree也能Export文件
举报原因:
原因补充:

(最多只允许输入30个字)