具有可视化的功能的一款开源软件Gource
今天为大家介绍一个非常有趣儿的开源软件,Gource可以将代码版本控制系统里面的日志全部可视化,也就是说可以看见每个成员在系统里面提交代码的行为,Gource目前支持git,hg,svn。
在这里可以下载到博主制作的屏幕录像: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的更多相关文章
- 2016年开源软件排名TOP50,最受IT公司欢迎的50款开源软件
2016年开源软件排名TOP50,最受IT公司欢迎的50款开源软件 过去十年间,许多科技公司已开始畅怀拥抱开源.许多公司使用开源工具来运行自己的 IT 基础设施和网站,一些提供与开源工具相关的产品和服 ...
- spring boot 实战:我们的第一款开源软件
在信息爆炸时代,如何避免持续性信息过剩,使自己变得专注而不是被纷繁的信息所累?每天会看到各种各样的新闻,各种新潮的技术层出不穷,如何筛选出自己所关心的? 各位看官会想,我们是来看开源软件的,你给我扯什 ...
- 最受IT公司欢迎的50款开源软件
文章来自:云头条编译 本文介绍了多款知名的开源应用软件,科技公司可以用它们来管理自己的 IT 基础设施.开发产品. 过去十年间,许多科技公司已开始畅怀拥抱开源.许多公司使用开源工具来运行自己的 IT ...
- SpringBoot实战:我们的第一款开源软件
原文出处: 纯洁的微笑 在信息爆炸时代,如何避免持续性信息过剩,使自己变得专注而不是被纷繁的信息所累?每天会看到各种各样的新闻,各种新潮的技术层出不穷,如何筛选出自己所关心的? 各位看官会想,我们是来 ...
- 一款开源Office软件---Lotus Symphony在Linux系统下的应用
点击下载观看试用录像 Linux系统下的办公软件有OpenOffice.永中Office.红旗Red Office.金山Wps Office及StarOffice等,今天我为大家介绍IBM推进军O ...
- 微软、谷歌、亚马逊、Facebook等硅谷大厂91个开源软件盘点(附下载地址)
开源软件中有大量专家构建的代码,大大节省了开发人员的时间和成本,热衷于开源的大厂们总是能够带给我们新的惊喜.2016年9月GitHub报告显示,GitHub已经有超过 520 万的用户和超 30 万的 ...
- 2015年度新增开源软件排名TOP100
2015年度新增开源软件排名TOP100 本榜单包含2015年开源中国新收录的软件中,根据软件本身的关注度.活跃程度进行排名前100名的软件.从这份榜单中或许可以了解到最新业界的趋势. 1.Switc ...
- 2015 年度新增开源软件排名TOP100
本榜单包括 2015 年开源中国新收录的 5977 款开源软件中,依据软件本身的关注度.活跃程度进行排名前 100 名的软件.从这份榜单中也许能够了解到最新业界的趋势. 1.SwitchyOmega ...
- 开源中国 2014 最受关注开源软件排行榜 TOP 50
开源中国 2014 最受关注开源软件排行榜 TOP 50 开源中国 2014 年最受关注软件排行榜 TOP 50 正式出炉!2014 年结束了,我们来了解一下过去一年里开源中国最受欢迎的 50 款软件 ...
随机推荐
- 数据绑定的知识点<%%>,<%#%>,<%=%>
1.<% %>用来绑定后台代码 如: < % for(int i=0;i<100;i++) { Reaponse.Write(i.ToString()); } %> 2. ...
- dedecms4张关键表解析之1
虽然dedecms默认共有87张表,但是只有4张最核心,最最要的表. 1.第一张表:dede_arctype 栏目表 dede设计者认为不管存放什么样的数据(文章,商品,电影)都应该属于某个栏目(类 ...
- UI Framework-1: Ash Color Chooser
Ash Color Chooser Overview This document describes how to achieve <input type=”color”> UI in C ...
- Debian9.5下sftp配置和scp用法
基于 ssh 的 sftp 服务相比 ftp 有更好的安全性(非明文帐号密码传输)和方便的权限管理(限制用户的活动目录). 1.如果只想让某些用户只能使用 sftp 操作文件, 而不能通过ssh进行服 ...
- iOS——集成支付宝 private key is NULL
问题描述:将生成的私钥,写进官方demo,还是一直报错:rsa_private read error : private key is NULL 解决方案:需要将RSA私钥转换成PKCS8格式
- SQL Server存储ntext截断问题
SQL Server存储ntext截断问题 最近遇到一个问题:将大文本存储到数据库的时候,查询出来的文本却被截断了. 最后百度发现,作者提出 sql server management studi ...
- rsync---远程数据同步工具
rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而 ...
- numpy基础篇-简单入门教程1
np.split(A, 4, axis=1),np.hsplit(A, 4) 分割 A = np.arange(12).reshape((3, 4)) # 水平方向的长度是4 print(np.spl ...
- OpenJDK源码研究笔记(九)-可恨却又可亲的的异常(NullPointerException)
可恨的异常 程序开发过程中,最讨厌异常了. 异常代表着程序出了问题,一旦出现,控制台会出现一屏又一屏的堆栈错误信息. 看着就让人心烦. 对于一个新人来讲,遇到异常经常会压力大,手忙脚乱,心生畏惧. 可 ...
- 【转】 我的java web登录RSA加密
[转] 我的java web登录RSA加密 之前一直没关注过web应用登录密码加密的问题,这两天用appscan扫描应用,最严重的问题就是这个了,提示我明文发送密码.这个的确很不安全,以前也大概想过, ...