今天为大家介绍一个非常有趣儿的开源软件,Gource可以将代码版本控制系统里面的日志全部可视化,也就是说可以看见每个成员在系统里面提交代码的行为,Gource目前支持git,hg,svn。

650) this.width=650;" border="0" alt="100251177.jpg" src="http://img1.51cto.com/attachment/201202/100251177.jpg" />

在这里可以下载到博主制作的屏幕录像:http://115.com/file/e7hrt6w3#gource.rar

安装:

安装下面几个软件包:

build-essential  libsdl1.2-dev   freetype2*  glew*  
下载0.37版并解压缩
root@cgweb-VirtualBox:/home/cgweb/gource-0.37# ./configure  
checking for a BSD-compatible install... /usr/bin/install -c 
checking whether build environment is sane... yes 
checking for a thread-safe mkdir -p... /bin/mkdir -p 
checking for gawk... no 
checking for mawk... mawk 
checking whether make sets $(MAKE)... yes 
checking build system type... x86_64-unknown-linux-gnu 
checking host system type... x86_64-unknown-linux-gnu 
checking for g++... g++ 
checking whether the C++ compiler works... yes 
checking for C++ compiler default output file name... a.out 
checking for suffix of executables...  
checking whether we are cross compiling... no 
checking for suffix of object files... o 
checking whether we are using the GNU C++ compiler... yes 
checking whether g++ accepts -g... yes 
checking for style of include used by make... GNU 
checking dependency style of g++... gcc3 
checking for timegm... yes 
checking for unsetenv... yes 
checking how to run the C++ preprocessor... g++ -E 
checking for X... libraries , headers  
checking for a sed that does not truncate output... /bin/sed 
checking for gcc... gcc 
checking whether we are using the GNU C compiler... yes 
checking whether gcc accepts -g... yes 
checking for gcc option to accept ISO C89... none needed 
checking dependency style of gcc... gcc3 
checking for the pthreads library -lpthreads... no 
checking whether pthreads work without any flags... no 
checking whether pthreads work with -Kthread... no 
checking whether pthreads work with -kthread... no 
checking for the pthreads library -llthread... no 
checking whether pthreads work with -pthread... yes 
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE 
checking if more special flags are required for pthreads... no 
checking how to run the C preprocessor... gcc -E 
checking for grep that handles long lines and -e... /bin/grep 
checking for egrep... /bin/grep -E 
checking for ANSI C header files... yes 
checking for sys/types.h... yes 
checking for sys/stat.h... yes 
checking for stdlib.h... yes 
checking for string.h... yes 
checking for memory.h... yes 
checking for strings.h... yes 
checking for inttypes.h... yes 
checking for stdint.h... yes 
checking for unistd.h... yes 
checking whether we are using the Microsoft C compiler... no 
checking windows.h usability... no 
checking windows.h presence... no 
checking for windows.h... no 
checking for GL/gl.h... yes 
checking for OpenGL/gl.h... no 
checking for OpenGL library... -lGL 
checking for GL/glu.h... yes 
checking for OpenGL/glu.h... no 
checking for OpenGL Utility library... -lGLU 
checking for varargs GLU tesselator callback function type... no 
checking for sdl-config... /usr/bin/sdl-config 
checking for SDL - version >= 1.2.10... yes 
checking for freetype-config... /usr/bin/freetype-config 
checking for FreeType -- version >= 9.0.3... yes 
checking for IMG_LoadPNG_RW in -lSDL_image... yes 
checking for IMG_LoadJPG_RW in -lSDL_image... yes 
checking for pcre_compile in -lpcre... yes 
checking for glewInit in -lGLEW... yes 
checking SDL.h usability... yes 
checking SDL.h presence... yes 
checking for SDL.h... yes 
checking SDL_image.h usability... yes 
checking SDL_image.h presence... yes 
checking for SDL_image.h... yes 
checking pcre.h usability... yes 
checking pcre.h presence... yes 
checking for pcre.h... yes 
checking GL/glew.h usability... yes 
checking GL/glew.h presence... yes 
checking for GL/glew.h... yes 
configure: creating ./config.status 
config.status: creating Makefile 
config.status: executing depfiles commands 
root@cgweb-VirtualBox:/home/cgweb/gource-0.37# make;make install
  编译完成后的gource程序大小约5M左右。下面配置视频相关内容
root@cgweb-VirtualBox:/home/cgweb/gource-0.37/x264# ./configure  
platform:      X86_64 
system:        LINUX 
cli:           yes 
libx264:       internal 
shared:        no 
static:        no 
asm:           yes 
interlaced:    yes 
avs:           no 
lavf:          no 
ffms:          no 
gpac:          no 
gpl:           yes 
thread:        posix 
filters:       crop select_every  
debug:         no 
gprof:         no 
strip:         no 
PIC:           no 
visualize:     no 
bit depth:     8 
chroma format: all

You can run 'make' or 'make fprofiled' now.

root@cgweb-VirtualBox:/home/cgweb/gource-0.37/x264# checkinstall --pkgname=x264 --pkgversion "2:0.`grep X264_BUILD x264.h -m1 | cut -d ` `-f3`.'git rev-list HEAD |wc -l'+git'git rev-list HEAD -n 1 |head -c 7'" --backup=no --default 
cut:选项需要一个参数 -- d 
请尝试执行“cut --help”来获取更多信息。 
-f3:找不到命令

checkinstall 1.6.2, Copyright 2009 Felipe Eduardo Sanchez Diaz Duran 
本软件以 GNU GPL 版权协议颁布

The package documentation directory ./doc-pak does not exist.  
Should I create a default set of package docs?  [y]: y

准备软件包的文档……OK

***************************************** 
**** Debian package creation selected *** 
*****************************************

*** Warning: The package version "2:0. .git rev-list HEAD |wc -l+gitgit rev-list HEAD -n 1 |head -c 7" is not a 
*** Warning: debian policy compliant one. Please specify an alternate one

软件包将用下面的值来创建:

0 -  Maintainer: [ root@cgweb-VirtualBox ] 
1 -  Summary: [ Package created with checkinstall 1.6.2 ] 
2 -  Name:    [ x264 ] 
3 -  Version: [ 0 ] 
4 -  Release: [ 1 ] 
5 -  License: [ GPL ] 
6 -  Group:   [ checkinstall ] 
7 -  Architecture: [ amd64 ] 
8 -  Source location: [ x264 ] 
9 -  Alternate source location: [  ] 
10 - Requires: [  ] 
11 - Provides: [ x264 ] 
12 - Conflicts: [  ] 
13 - Replaces: [  ]

输入一个数字来改变它们,或按回车键继续:

Installing with make install...

=============================== 安装结果 ================================= 
install -d /usr/local/bin 
install x264 /usr/local/bin

=============================== 安装成功 =================================

Copying documentation directory... 
./ 
./AUTHORS 
./doc/ 
./doc/regression_test.txt 
./doc/standards.txt 
./doc/threads.txt 
./doc/vui.txt 
./doc/ratecontrol.txt 
./COPYING

把文件拷贝到临时目录……OK

Stripping ELF binaries and libraries...OK

压缩 man 手册页……OK

创建文件列表……OK

创建 Debian 包……OK

安装 Debian 包……OK

删除临时文件……OK

删除临时目录……OK

**********************************************************************

Done. The new package has been installed and saved to

/home/cgweb/gource-0.37/x264/x264_0-1_amd64.deb

You can remove it from your system anytime using:

dpkg -r x264

**********************************************************************

root@cgweb-VirtualBox:/home/cgweb/gource-0.37/x264/ffmpeg# ./configure --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --enable-pthreads   --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora  --enable-libxvid --enable-x11grab 
install prefix            /usr/local 
source path               /home/cgweb/gource-0.37/x264/ffmpeg 
C compiler                gcc 
ARCH                      x86 (generic) 
big-endian                no 
runtime cpu detection     no 
yasm                      yes 
MMX enabled               yes 
MMX2 enabled              yes 
3DNow! enabled            yes 
3DNow! extended enabled   yes 
SSE enabled               yes 
SSSE3 enabled             yes 
CMOV enabled              yes 
CMOV is fast              yes 
EBX available             yes 
EBP available             yes 
10 operands supported     yes 
debug symbols             yes 
strip symbols             yes 
optimizations             yes 
static                    yes 
shared                    no 
postprocessing support    yes 
new filter support        yes 
network support           yes 
threading support         pthreads 
SDL support               yes 
Sun medialib support      no 
AVISynth enabled          no 
frei0r enabled            no 
libdc1394 support         no 
libdirac enabled          no 
libfaac enabled           no 
libgsm enabled            no 
libmp3lame enabled        yes 
libnut enabled            no 
libopencore-amrnb support yes 
libopencore-amrwb support yes 
libopencv support         no 
libopenjpeg enabled       no 
librtmp enabled           no 
libschroedinger enabled   no 
libspeex enabled          no 
libtheora enabled         yes 
libvorbis enabled         no 
libvpx enabled            no 
libx264 enabled           no 
libxavs enabled           no 
libxvid enabled           yes 
zlib enabled              yes 
bzlib enabled             no

Enabled decoders: 
aac            dsicinaudio        mp3on4 
aac_latm        dsicinvideo        mp3on4float 
aasc            dvbsub            mpc7 
ac3            dvdsub            mpc8 
adpcm_4xm        dvvideo            mpeg1video 
adpcm_adx        dxa            mpeg2video 
adpcm_ct        eac3            mpeg4 
adpcm_ea        eacmv            mpegvideo 
adpcm_ea_maxis_xa    eamad            msmpeg4v1 
adpcm_ea_r1        eatgq            msmpeg4v2 
adpcm_ea_r2        eatgv            msmpeg4v3 
adpcm_ea_r3        eatqi            msrle 
adpcm_ea_xas        eightbps        msvideo1 
adpcm_g722        eightsvx_exp        mszh 
adpcm_g726        eightsvx_fib        nellymoser 
adpcm_ima_amv        escape124        nuv 
adpcm_ima_dk3        ffv1            pam 
adpcm_ima_dk4        ffvhuff            pbm 
adpcm_ima_ea_eacs    flac            pcm_alaw 
adpcm_ima_ea_sead    flashsv            pcm_bluray 
adpcm_ima_iss        flic            pcm_dvd 
adpcm_ima_qt        flv            pcm_f32be 
adpcm_ima_smjpeg    fourxm            pcm_f32le 
adpcm_ima_wav        fraps            pcm_f64be 
adpcm_ima_ws        frwu            pcm_f64le 
adpcm_ms        gif            pcm_lxf 
adpcm_sbpro_2        gsm            pcm_mulaw 
adpcm_sbpro_3        gsm_ms            pcm_s16be 
adpcm_sbpro_4        h261            pcm_s16le 
adpcm_swf        h263            pcm_s16le_planar 
adpcm_thp        h263i            pcm_s24be 
adpcm_xa        h264            pcm_s24daud 
adpcm_yamaha        huffyuv            pcm_s24le 
alac            idcin            pcm_s32be 
als            iff_byterun1        pcm_s32le 
amrnb            iff_ilbm        pcm_s8 
amrwb            imc            pcm_u16be 
amv            indeo2            pcm_u16le 
anm            indeo3            pcm_u24be 
ansi            indeo5            pcm_u24le 
ape            interplay_dpcm        pcm_u32be 
ass            interplay_video        pcm_u32le 
asv1            jpegls            pcm_u8 
asv2            kgv1            pcm_zork 
atrac1            kmvc            pcx 
atrac3            lagarith        pgm 
aura            libopencore_amrnb    pgmyuv 
aura2            libopencore_amrwb    pgssub 
avs            loco            pictor 
bethsoftvid        mace3            png 
bfi            mace6            ppm 
bink            mdec            ptx 
binkaudio_dct        mimic            qcelp 
binkaudio_rdft        mjpeg            qdm2 
bmp            mjpegb            qdraw 
c93            mlp            qpeg 
cavs            mmvideo            qtrle 
cdgraphics        motionpixels        r10k 
cinepak            mp1            r210 
cljr            mp1float        ra_144 
cook            mp2            ra_288 
cscd            mp2float        rawvideo 
cyuv            mp3            rl2 
dca            mp3adu            roq 
dnxhd            mp3adufloat        roq_dpcm 
dpx            mp3float        rpza 
rv10            tiff            vp6 
rv20            tmv            vp6a 
rv30            truehd            vp6f 
rv40            truemotion1        vp8 
sgi            truemotion2        vqa 
shorten            truespeech        wavpack 
sipr            tscc            wmapro 
smackaud        tta            wmav1 
smacker            twinvq            wmav2 
smc            txd            wmavoice 
snow            ulti            wmv1 
sol_dpcm        v210            wmv2 
sonic            v210x            wmv3 
sp5x            vb            wnv1 
srt            vc1            ws_snd1 
sunrast            vcr1            xan_dpcm 
svq1            vmdaudio        xan_wc3 
svq3            vmdvideo        xl 
targa            vmnc            xsub 
theora            vorbis            yop 
thp            vp3            zlib 
tiertexseqvideo        vp5            zmbv

Enabled encoders: 
a64multi        libmp3lame        pcm_u24le 
a64multi5        libopencore_amrnb    pcm_u32be 
aac            libtheora        pcm_u32le 
ac3            libxvid            pcm_u8 
ac3_fixed        ljpeg            pcm_zork 
adpcm_adx        mjpeg            pcx 
adpcm_g722        mp2            pgm 
adpcm_g726        mpeg1video        pgmyuv 
adpcm_ima_qt        mpeg2video        png 
adpcm_ima_wav        mpeg4            ppm 
adpcm_ms        msmpeg4v1        qtrle 
adpcm_swf        msmpeg4v2        ra_144 
adpcm_yamaha        msmpeg4v3        rawvideo 
alac            nellymoser        roq 
ass            pam            roq_dpcm 
asv1            pbm            rv10 
asv2            pcm_alaw        rv20 
bmp            pcm_f32be        sgi 
dnxhd            pcm_f32le        snow 
dvbsub            pcm_f64be        sonic 
dvdsub            pcm_f64le        sonic_ls 
dvvideo            pcm_mulaw        svq1 
ffv1            pcm_s16be        targa 
ffvhuff            pcm_s16le        tiff 
flac            pcm_s24be        v210 
flashsv            pcm_s24daud        vorbis 
flv            pcm_s24le        wmav1 
gif            pcm_s32be        wmav2 
h261            pcm_s32le        wmv1 
h263            pcm_s8            wmv2 
h263p            pcm_u16be        xsub 
huffyuv            pcm_u16le        zlib 
jpegls            pcm_u24be        zmbv

Enabled hwaccels:

Enabled parsers: 
aac            dvdsub            mpeg4video 
aac_latm        flac            mpegaudio 
ac3            h261            mpegvideo 
cavsvideo        h263            pnm 
dca            h264            vc1 
dirac            mjpeg            vp3 
dnxhd            mlp            vp8 
dvbsub

Enabled demuxers: 
aac            ipmovie            pcm_u32be 
ac3            iss            pcm_u32le 
aea            iv8            pcm_u8 
aiff            ivf            pva 
amr            lmlm4            qcp 
anm            lxf            r3d 
apc            m4v            rawvideo 
ape            matroska        rl2 
applehttp        mjpeg            rm 
asf            mlp            roq 
ass            mm            rpl 
au            mmf            rso 
avi            mov            rtp 
avs            mp3            rtsp 
bethsoftvid        mpc            sap 
bfi            mpc8            sdp 
bink            mpegps            segafilm 
c93            mpegts            shorten 
caf            mpegtsraw        siff 
cavsvideo        mpegvideo        smacker 
cdg            msnwc_tcp        sol 
daud            mtv            sox 
dirac            mvi            spdif 
dnxhd            mxf            srt 
dsicin            mxg            str 
dts            nc            swf 
dv            nsv            thp 
dxa            nut            tiertexseq 
ea            nuv            tmv 
ea_cdata        ogg            truehd 
eac3            oma            tta 
ffm            pcm_alaw        tty 
ffmetadata        pcm_f32be        txd 
filmstrip        pcm_f32le        vc1 
flac            pcm_f64be        vc1t 
flic            pcm_f64le        vmd 
flv            pcm_mulaw        voc 
fourxm            pcm_s16be        vqf 
g722            pcm_s16le        w64 
gsm            pcm_s24be        wav 
gxf            pcm_s24le        wc3 
h261            pcm_s32be        wsaud 
h263            pcm_s32le        wsvqa 
h264            pcm_s8            wtv 
idcin            pcm_u16be        wv 
iff            pcm_u16le        xa 
image2            pcm_u24be        yop 
image2pipe        pcm_u24le        yuv4mpegpipe 
ingenient

Enabled muxers: 
a64            ipod            pcm_s16le 
ac3            m4v            pcm_s24be 
adts            matroska        pcm_s24le 
aiff            matroska_audio        pcm_s32be 
amr            md5            pcm_s32le 
asf            mjpeg            pcm_s8 
asf_stream        mlp            pcm_u16be 
ass            mmf            pcm_u16le 
au            mov            pcm_u24be 
avi            mp2            pcm_u24le 
avm2            mp3            pcm_u32be 
cavsvideo        mp4            pcm_u32le 
crc            mpeg1system        pcm_u8 
daud            mpeg1vcd        psp 
dirac            mpeg1video        rawvideo 
dnxhd            mpeg2dvd        rm 
dts            mpeg2svcd        roq 
dv            mpeg2video        rso 
eac3            mpeg2vob        rtp 
ffm            mpegts            rtsp 
ffmetadata        mpjpeg            sap 
filmstrip        mxf            sox 
flac            mxf_d10            spdif 
flv            null            srt 
framecrc        nut            swf 
framemd5        ogg            tg2 
g722            pcm_alaw        tgp 
gif            pcm_f32be        truehd 
gxf            pcm_f32le        vc1t 
h261            pcm_f64be        voc 
h263            pcm_f64le        wav 
h264            pcm_mulaw        webm 
image2            pcm_s16be        yuv4mpegpipe 
image2pipe

Enabled protocols: 
concat            mmst            rtmpt 
file            pipe            rtmpte 
gopher            rtmp            rtp 
http            rtmpe            tcp 
md5            rtmps            udp 
mmsh

Enabled filters: 
anull            format            scale 
anullsink        gradfun            setdar 
anullsrc        hflip            setpts 
blackframe        hqdn3d            setsar 
buffer            noformat        settb 
color            null            slicify 
copy            nullsink        transpose 
crop            nullsrc            unsharp 
cropdetect        overlay            vflip 
drawbox            pad            yadif 
fifo            pixdesctest

Enabled bsfs: 
aac_adtstoasc        mjpeg2jpeg        mp3_header_decompress 
chomp            mjpega_dump_header    noise 
dump_extradata        mov2textsub        remove_extradata 
h264_mp4toannexb    mp3_header_compress    text2movsub 
imx_dump_header

Enabled indevs: 
alsa            oss            v4l2 
dv1394            v4l            x11_grab_device

Enabled outdevs: 
alsa            oss

License: nonfree and unredistributable 
Creating config.mak and config.h...

本文出自 “李晨光原创技术博客” 博客,请务必保留此出处http://chenguang.blog.51cto.com/350944/774539

具有可视化的功能的一款开源软件Gource的更多相关文章

  1. 2016年开源软件排名TOP50,最受IT公司欢迎的50款开源软件

    2016年开源软件排名TOP50,最受IT公司欢迎的50款开源软件 过去十年间,许多科技公司已开始畅怀拥抱开源.许多公司使用开源工具来运行自己的 IT 基础设施和网站,一些提供与开源工具相关的产品和服 ...

  2. spring boot 实战:我们的第一款开源软件

    在信息爆炸时代,如何避免持续性信息过剩,使自己变得专注而不是被纷繁的信息所累?每天会看到各种各样的新闻,各种新潮的技术层出不穷,如何筛选出自己所关心的? 各位看官会想,我们是来看开源软件的,你给我扯什 ...

  3. 最受IT公司欢迎的50款开源软件

    文章来自:云头条编译 本文介绍了多款知名的开源应用软件,科技公司可以用它们来管理自己的 IT 基础设施.开发产品. 过去十年间,许多科技公司已开始畅怀拥抱开源.许多公司使用开源工具来运行自己的 IT ...

  4. SpringBoot实战:我们的第一款开源软件

    原文出处: 纯洁的微笑 在信息爆炸时代,如何避免持续性信息过剩,使自己变得专注而不是被纷繁的信息所累?每天会看到各种各样的新闻,各种新潮的技术层出不穷,如何筛选出自己所关心的? 各位看官会想,我们是来 ...

  5. 一款开源Office软件---Lotus Symphony在Linux系统下的应用

    点击下载观看试用录像   Linux系统下的办公软件有OpenOffice.永中Office.红旗Red Office.金山Wps Office及StarOffice等,今天我为大家介绍IBM推进军O ...

  6. 微软、谷歌、亚马逊、Facebook等硅谷大厂91个开源软件盘点(附下载地址)

    开源软件中有大量专家构建的代码,大大节省了开发人员的时间和成本,热衷于开源的大厂们总是能够带给我们新的惊喜.2016年9月GitHub报告显示,GitHub已经有超过 520 万的用户和超 30 万的 ...

  7. 2015年度新增开源软件排名TOP100

    2015年度新增开源软件排名TOP100 本榜单包含2015年开源中国新收录的软件中,根据软件本身的关注度.活跃程度进行排名前100名的软件.从这份榜单中或许可以了解到最新业界的趋势. 1.Switc ...

  8. 2015 年度新增开源软件排名TOP100

    本榜单包括 2015 年开源中国新收录的 5977 款开源软件中,依据软件本身的关注度.活跃程度进行排名前 100 名的软件.从这份榜单中也许能够了解到最新业界的趋势. 1.SwitchyOmega ...

  9. 开源中国 2014 最受关注开源软件排行榜 TOP 50

    开源中国 2014 最受关注开源软件排行榜 TOP 50 开源中国 2014 年最受关注软件排行榜 TOP 50 正式出炉!2014 年结束了,我们来了解一下过去一年里开源中国最受欢迎的 50 款软件 ...

随机推荐

  1. 数据绑定的知识点<%%>,<%#%>,<%=%>

    1.<% %>用来绑定后台代码 如: < % for(int i=0;i<100;i++) { Reaponse.Write(i.ToString()); } %> 2. ...

  2. dedecms4张关键表解析之1

    虽然dedecms默认共有87张表,但是只有4张最核心,最最要的表. 1.第一张表:dede_arctype  栏目表 dede设计者认为不管存放什么样的数据(文章,商品,电影)都应该属于某个栏目(类 ...

  3. UI Framework-1: Ash Color Chooser

    Ash Color Chooser Overview This document describes how to achieve <input type=”color”> UI in C ...

  4. Debian9.5下sftp配置和scp用法

    基于 ssh 的 sftp 服务相比 ftp 有更好的安全性(非明文帐号密码传输)和方便的权限管理(限制用户的活动目录). 1.如果只想让某些用户只能使用 sftp 操作文件, 而不能通过ssh进行服 ...

  5. iOS——集成支付宝 private key is NULL

    问题描述:将生成的私钥,写进官方demo,还是一直报错:rsa_private read error : private key is NULL 解决方案:需要将RSA私钥转换成PKCS8格式

  6. SQL Server存储ntext截断问题

    SQL Server存储ntext截断问题   最近遇到一个问题:将大文本存储到数据库的时候,查询出来的文本却被截断了. 最后百度发现,作者提出 sql server management studi ...

  7. rsync---远程数据同步工具

    rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而 ...

  8. numpy基础篇-简单入门教程1

    np.split(A, 4, axis=1),np.hsplit(A, 4) 分割 A = np.arange(12).reshape((3, 4)) # 水平方向的长度是4 print(np.spl ...

  9. OpenJDK源码研究笔记(九)-可恨却又可亲的的异常(NullPointerException)

    可恨的异常 程序开发过程中,最讨厌异常了. 异常代表着程序出了问题,一旦出现,控制台会出现一屏又一屏的堆栈错误信息. 看着就让人心烦. 对于一个新人来讲,遇到异常经常会压力大,手忙脚乱,心生畏惧. 可 ...

  10. 【转】 我的java web登录RSA加密

    [转] 我的java web登录RSA加密 之前一直没关注过web应用登录密码加密的问题,这两天用appscan扫描应用,最严重的问题就是这个了,提示我明文发送密码.这个的确很不安全,以前也大概想过, ...