bakefile:bakefile建立统一的开发环境 用SVN进行代码管理

  在个项目中往往需要很多子系统甚至子平台项目团队(Team)成员也不而论有几人几十人甚至几百几千人那么开发环境搭建好坏就会影响团队(Team)协作、团队(Team)新手上手等

  我们项目管理(project management)使用bakefile和SVN进行团队(Team)协作至于SVN服务端安装配置在这就不多说了

  首先安装最新版bakefile和svn client,分别在http://www.bakefile.org/index.html,http: //www.subversion.org.cn/,安装结束后将以上 2个软件Software路径加入到windows系统环境变量中linux中则相安装 完后会自动添加

  现在假设我们在WINDOWS中要建项目test

  为了开发及协作方便大家存放代码位置也应现假设为c:"works,在svn server中已添加了个新代码仓库test,启命令行路径切换至c:"works

  1. 导出代码库test

  svn co http://server/svn/test/trunk test

  输入帐户信息后即可将版本导出

  2. 将代码添加到SVN中,假设新加了文件为.cpp

  cd test


  svn add .cpp

  svn ci -m "added .cpp file"

  3. 获取SVN中最新版本

  svn up

  4. 查看svn版本和本地版本差异

  svn st

  5. 提交svn版本

  svn ci -m "message"

  以上即为SVN在代码中使用时介绍由于SVN开源、支持合并差异版本管理等特性本人推荐SVN

  代码受控后应该做个统编译调试环境那么为了省事应建个bakefile运行脚本个bakefile编译配置脚本.

  运行脚本在WINDOWS上存为bake.cmd

@echo off
"%1""" goto ERROR
not "%2""" goto ERROR
WX_WIDGETS=wxWidgets-2.8.7
WX_DEFINES=-IC:"works"%WX_WIDGETS%"build"bakefiles"wxpres -DWX_DIR=C:"works"%WX_WIDGETS% -DWX_UNICODE=1
"%1""release" goto RELEASE
:DEBUG
bakefile build.bkl -f msvc -o Makefile -DWX_DEBUG=1 -DWX_SHARED=1 -DBUILD=debug -DBUILDDIR=Debug %WX_DEFINES%
goto END
:RELEASE
bakefile build.bkl -f msvc -o Makefile -DWX_DEBUG=0 -DWX_SHARED=0 -DBUILD=release -DBUILDDIR=Release %WX_DEFINES%
goto END
:ERROR
echo Usage: bake [debug / release]


:END

  以上脚本则包含了DEBUG和release 2个选项编译支持按bakefile需求则还得实现个build.bkl存放编译环境配置

<?xml version="1.0" ?>
<makefile>
   
    <exe id="test">
      <app-type>console</app-type>
      <win32-res>test.rc</win32-res>
      <sources>$(fileList('*.cpp'))</sources>
    </exe>


</makefile>

  当然build.bkl还可加如模板命令等其它内容这就要按项目需求来实现

  既然各项工作都已做完那么试试bake.cmd debug或bake.cmd release生成Makefile吧如果配置了VC编译器nmake下即可生成你应用了如果是GCC编译器你也只需make就可以了

Tags:  svn建立版本库 svn代码统计 bakefile

延伸阅读

最新评论

发表评论