Gitblit服务器搭建和git使用教程

Gitblit服务器搭建和git使用教程
Gitblit服务器搭建和git使用教程

Gitblit服务器搭建和git使用教程

1.大纲

目前做代码管理的主流是Git,GIthub付费才能不被开源,所以在小范围内或者小型开发团队可以使用Gitblit搭建自己的私人服务器。以下是教程:

需要的安装工具如下

2.安装JDK,配置JAVA环境

默认安装即可。

安装成功后找到安装路径,配置环境变量

右击计算机-->属性-->高级系统配置,点开后

环境变量下面的系统变量

新建

确定保存后CMD一下,输入JAVAC回车,如下图所示则环境配置成功

3.Gitblit服务器搭建

去官网https://www.360docs.net/doc/0812090632.html,/下载最新的压缩包,并在Windows 上搭建

1)下载

2)解压到合适的目录下,如:

3)创建一个目录来存放代码库: E:/GitRepository

4)修改data目录下的gitblit.properties

E:\Gitblit\gitblit-1.7.1\data \gitblit.properties

添加红色部分

#

# GITBLIT.PROPERTIES

#

# Define your custom settings in this file and/or include settings defined in

# other properties files.

#

# Include Gitblit's 'defaults.properties' within your configuration.

#

# NOTE: Gitblit will not automatically reload "included" properties. Gitblit

# only watches the 'gitblit.properties' file for modifications.

#

# Paths may be relative to the ${baseFolder} or they may be absolute.

#

# COMMA-DELIMITED

# SINCE 1.7.0

include = defaults.properties

#

# Define your overrides or custom settings below

#

# Base folder for repositories.

# This folder may contain bare and non-bare repositories but Gitblit will only # allow you to push to bare repositories.

# Use forward slashes even on Windows!!

# e.g. c:/gitrepos

#

# SINCE 0.5.0

# RESTART REQUIRED

# BASEFOLDER

git.repositoriesFolder = E:\Workspace

# Standard http port to serve. <= 0 disables this connector.

# On Unix/Linux systems, ports < 1024 require root permissions.

# Recommended value: 80 or 8080

#

# SINCE 0.5.0

# RESTART REQUIRED

server.httpPort = 1000

# Secure/SSL https port to serve. <= 0 disables this connector.

# On Unix/Linux systems, ports < 1024 require root permissions.

# Recommended value: 443 or 8443

#

# SINCE 0.5.0

# RESTART REQUIRED

server.httpsPort = 1001

# Specify the interface for Jetty to bind the standard connector.

# You may specify an ip or an empty value to bind to all interfaces.

# Specifying localhost will result in Gitblit ONLY listening to requests to

# localhost.

#

# SINCE 0.5.0

# RESTART REQUIRED

server.httpBindInterface =

# Specify the interface for Jetty to bind the secure connector.

# You may specify an ip or an empty value to bind to all interfaces.

# Specifying localhost will result in Gitblit ONLY listening to requests to # localhost.

#

# SINCE 0.5.0

# RESTART REQUIRED

server.httpsBindInterface =

修改端口号http:1000;https:1001

5)修改

根据机器架构选择对应的,我是64位的,所以选择amd64。保存退出

6)验证服务双击

7)根据主机的IP地址登录gitblit服务器

http://192.168.1.254:1000/

初始用户名和密码都是admin

4.Gitblit配置

1)管理员账号登录

2)修改管理员账号密码

3)添加用户

为开发团队人员创建用户,只有授权用户才能进行相关操作

将创建好的用户名和密码发给团队成员,让其登录服务器进去修改密码。

4)创建项目组

若团队有几个项目同时进行开发,我们可以为每个项目创建该项目的团队

往团队添加该团队成员,并保存

5.创建Gitblit版本库

1)使用系统管理员账号登录,点击“创建版本库”

2)填入版本库信息

为了保证代码的安全,在访问策略下选择第4个,这样只有加入该项目的人才能够查看项目。

3)设置项目权限

当项目创建后,点进编辑icon

设置团队及用户权限

这样一个可用的版本库建立完成。

6.安装Git

1)去git官网下载最新安装包

2)默认安装

3)在命令窗口添加姓名与邮箱

4)检查配置是否成功

7.项目上传最初始代码

本地准备

1)将代码文件夹放到合适的路径下

在该文件上右击,然后选择Git Bash Here(Git快捷方式)输入命令行:git init 将该文件夹设置成为本地仓库

2)把该文件夹下所有文件添加到本地仓库

Git add .

3)提交到本地仓库

Git commit -m “将初始代码提交到本地仓库”

OK,项目在本地仓库已经准备好向服务器端推送了。服务器端

1)查看上传路径,用项目管理者登陆http://192.168.1.109:1000

2)查看刚才建立的新版本库

3)上传代码(在刚才的命令终端)

4)在服务器端可以看见刚被推送上去的代码文件

为了项目开发,我们还需要做两件事

1)创建初始tag(标签),并上传到服务器

2)创建服务器的dev分支

一般master分支为稳定代码,小型团队平常开发一般在另一个分支dev上,所以我们先在服务器上创建dev分支。(只有授权的人才能创建分支)

3)查看分支

本地分支:git branch

服务器分支: git branch -r

8.团队成员的clone

1)在客户端电脑建立一个合适的目录

2)在该目录上右击 Git Bash Here

3)从服务器clone到该目录

4)在命令行进入clone下来的文件,熟悉简单的git命令Git status (查看当前你修改后还没有提交的代码文件)

Git branch (查看本地的分支)

Git branch -r (查看服务器上的分支)

服务器上已经有了dev分支,我们在本地所进行的代码开发先推送到服务器上的分支上,由服务器管理员检查确定是否合并到主分支上。

5)创建你自己的本地开发分支

一般可根据自己的项目操作命名,这里使用localdev

Git branch localdev

6)Check out 当前的localdev分支(将本地主分支切换到本地分支上)

7)merge remote dev分支到本地local分支

9.上传代码到服务器

结合编译工具对代码进行开发后,我们首先提交到本地的仓库分支,然后再上传到服务器。

1)如:我在代码目录下新建一个1.txt文件

Git add . (先添加到本地库)

Git commit -m “添加1.txt文件”(将文件推送到本地

库)

2)合并服务器dev分支代码到我们localdev分支代码(首先确保当前的工作分支是localdev)

*表示当前的工作分支

(上图表示没有需要合并(merge)的地方,)

3)更新代码到远程服务器

10.开源共享,各位开发者加油!!!

11.安装小乌龟(TortoiseGit)

Git使用教程

Git使用教程 原文出处:涂根华的博客 一:Git是什么? Git是目前世界上最先进的分布式版本控制系统。 二:SVN与Git的最主要的区别? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,就纳闷了。 Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是 一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。 三:在windows上如何安装Git? msysgit是 windows版的Git,如下: 需要从网上下载一个,然后进行默认安装即可。安装完成后,在开始菜单里面找 到“Git –> Git Bash”,如下: 会弹出一个类似的命令窗口的东西,就说明Git安装成功。如下:

安装完成后,还需要最后一步设置,在命令行输入如下: 因为Git是分布式版本控制系统,所以需要填写用户名和邮箱作为一个标识。 注意:git config –global 参数,有了这个参数,表示你这台机器上所有的Git 仓库都会使用这个配置,当然你也可以对某个仓库指定的不同的用户名和邮箱。四:如何操作? 一:创建版本库。

Git+使用教程

Git 中文教程 介绍 Git --- The stupid content tracker, 傻瓜内容跟踪器。Linus 是这样给我们介绍 Git 的。 Git 是用于 Linux 内核开发的版本控制工具。与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如Linux kernel 这样的大项目来说自然很重要。 Git 最为出色的是它的合并跟踪(merge tracing)能力。 实际上内核开发团队决定开始开发和使用 Git 来作为内核开发的版本控制系统的时候,世界开源社群的反对声音不少,最大的理由是 Git 太艰涩难懂,从 Git 的内部工作机制来说,的确是这样。但是随着开发的深入,Git 的正常使用都由一些友好的脚本命令来执行,使 Git 变得非常好用,即使是用来管理我们自己的开发项目,Git 都是一个友好,有力的工具。现在,越来越多的著名项目采用 Git 来管理项目开发,例如:wine, U-boot 等,详情看https://www.360docs.net/doc/0812090632.html,/git 作为开源自由原教旨主义项目,Git 没有对版本库的浏览和修改做任何的权限限制。它只适用于 Linux / Unix 平台,没有 Windows 版本,目前也没有这样的开发计划。 本文将以 Git 官方文档Tutorial,core-tutorial和Everyday GIT作为蓝本翻译整理,但是暂时去掉了对 Git 内部工作机制的阐述,力求简明扼要,并加入了作者使用 Git 的过程中的一些心得体会,注意事项,以及更多的例子。建议你最好通过你所使用的 Unix / Linux 发行版的安装包来安装 Git, 你可以在线浏览本文,也可以通过下面的命令来得到本文最新的版本库,并且通过后面的学习用 Git 作为工具参加到本文的创作中来。 $ git-clone https://www.360docs.net/doc/0812090632.html,/git/gittutorcn.git 创建一个版本库:git-init-db 创建一个 Git 版本库是很容易的,只要用命令git-init-db就可以了。现在我们来为本文的写作创建一个版本库: $ mkdir gittutorcn $ cd gittutorcn $ git-init-db git 将会作出以下的回应 defaulting to local storage area 这样,一个空的版本库就创建好了,并在当前目录中创建一个叫 .git 的子目录。你可以用 ls -a 查看一下,并请注意其中的三项内容: ● 一个叫 HEAD 的文件,我们现在来查看一下它的内容:

github使用教程

1、什么是GIT Git是一个强调速度的分布式版本控制软件和源代码管理系统(SCM, source code management)。Git最初是由Linus Torvalds为内核开发而设计的管理软件。自从Git推出以来,已经被很多开源项目所采纳。每一个Git工作目录是一个带有完全历史记录和版本信息的仓库,不依赖于网络和中央服务器。Git是一个免费的开源软件,遵从GNU v2协议。 Git这个词在英语中的原意是很笨拙,没用的人。Linus自嘲说:“我是一个任性的笨蛋,所以我把我的所有的项目的名字都和我很相似。第一个是Linux,现在是Git。”Git的帮助文档中描述Git为:笨拙的内容跟踪者(the stupid content tracker)。(翻译自WIKI) 关于开发Git的一些历史由来,可以看看这个网站:https://https://www.360docs.net/doc/0812090632.html,/lkml/2005/4/6/121 2、为什么要用GIT ?更顺畅的工作流程,开发过程中,完全可以离线操作 ?快速,Git分布式架构使得本地仓库包含所有的历史版本信息,你可以在不同的版本之间快速切换 ?弹性的本地分支,在svn下,你建一个分支需要把源代码复制到另外一个文件夹,而在Git下,创建分支的代价是非常小的,只需一条命令 ?仓库目录结构简洁,用Git复制一个项目,只会在项目根目录创建一个.git的目录,而其他目录很干净 ?内容按元数据方式存储,所有的版本信息都位于.git目录下 ?完整性好,更易于协作开发 ?用户群大,现在已经有成千上万个开源项目采用Git来做项目管理,github上更是有无数个代码仓库 3、GIT安装与配置 a) 安装 1.从源码安装 在安装之前,你必须保证以下几个依赖包已经安装在你的系统上: curl, zlib, openssl, expat, libiconv。如果你的系统是Ubuntu,你可以这样安装: apt-get install curl-devel expat-devel gettext-devel openssl-devel zlib-devel 当所有的依赖项已经解决,就可以从https://www.360docs.net/doc/0812090632.html,/download上下载Git的源码,然后编译安装,具体命令如下: tar -zxf git-1.*.*.*.tar.gz cd git-1.*.* make prefix=/usr/local all sudo make prefix=/usr/local install

git简单入门教程

安装完成后,在命令行输入: $ git config --global https://www.360docs.net/doc/0812090632.html, "Your Name" $ git config --global user.email "email@https://www.360docs.net/doc/0812090632.html," 选择一个合适的地方,创建一个空目录: $ mkdir learngit $ cd learngit $ pwd /Users/michael/learngit 通过git init命令把这个目录变成Git可以管理的仓库: $ git init Initialized empty Git repository in /Users/michael/learngit/.git/ 编写一个readme.txt文件,一定要放到learngit目录下(子目录也行), 因为这是一个Git仓库,放到其他地方Git再厉害也找不到这个文件。内容如下: Git is a version control system. Git is free software. 修改的过程 第一步,用命令git add告诉Git,把文件添加到仓库://可以一次添加多个文件,然后分一次提交就行了 $ git add readme.txt 第二步,用命令git commit告诉Git,把文件提交到仓库: $ git commit -m "wrote a readme file" [master (root-commit) cb926e7] wrote a readme file 1 file changed, 2 insertions(+) create mode 100644 readme.txt git status 命令可以让我们时刻掌握仓库当前的状态 git diff 能看看具体修改了什么内容 git log命令显示从最近到最远的提交日志 如果嫌输出信息太多,看得眼花缭乱的, 可以试试加上--pretty=oneline $ git log --pretty=oneline

Git版本控制的安装使用指南

1. 概述 Git是基于Linux内核开发的分布式版本控制/软件配置管理软件,与CVS、Subversion 等集中式版本控制软件不同,Git采用分布式管理,不需要服务器端软件即可运行。Git速度很快,并且具有很出色的合并追踪能力。很多有名的软件开发都使用Git来进行版本控制,其中有Linux内核、https://www.360docs.net/doc/0812090632.html,服务器和OLPC内核开发等。 作为开源软件的代表,Git不对版本库的浏览和修改作任何的权限限制,因此只能采用其他工具实现权限管理,如gitosis、gitolite、CodeBeamer MR。 原本Git的使用只限于Linux/Unix,由于Cygwin、msysgit、TortoiseGit等GUI工具的出现,在Windows平台的使用逐渐成熟。 2. Git安装 2.1 安装Git 安装Git作为客户端,运行客户端可通过Git Bash(Git的命令行)或Git GUI操作。Windows下使用Git-1.7.8-preview20111206.exe,安装要点如下:

上述图片所示选项,似乎也不确定,网上帖子安装教程各种选项都有。安装完后,点击桌面Git Bash启动,执行命令pwd查看默认进入的文件目录,执行下面命令:mkdir .ssh (注意文件名前有.),即在默认目录下建立.ssh文件夹。修改环境变量,桌面右击我的电脑, 在属性中选择高级选项,左击环境变量,在系统变量中选择新建或编辑

下面列出一些问题的解决方法: a. Git Bash中ls不能显示中文目录(可直接打开编辑):在 git/etc/git-completion.bash中增加一行: alias ls='ls --show-control-chars --color=auto',注意引号为中文单引号,重启Git Bash b. Git commit不能提交中文注释:修改git/etc/inputrc中对应的行: set output-meta on set convert-meta off c. git log无法显示中文注释,在git/etc/profile中增加一行: export LESSCHARSET=iso8859 安装完后,需要在Git Bash中注册本人信息: git config --global https://www.360docs.net/doc/0812090632.html, Your Name git config --global user.email your@email.address 在服务端,即Ubuntu,安装Git: sudo apt-get install git-core git-doc 3. Gitolite安装

GIT使用入门详细教程

GIT使用入门 Part 1 第一章基本原理 git是一个版本控制系统。官方的解释是:版本控制(Revision control)是一种软 件工程技巧,籍以在开发的过程中,确保由不同人所编辑的同一档案都得到更新。按我的白话文解释就是:一群志同道合的人身处祖国各地,希望来合作开发一个 项目,假设这个项目是使用c语言写的(当然用任何语言都可以的)。那么大家怎么合作呢?用信件?效率太低。用邮件,不好实现多人沟通。用google group吧,可开发阶段中的源代码没法科学管理。用自建的网站吧,需要人力物 力财力来支撑阿。 这个时候版本控制系统就派上用场了。它可以让一个团队里的不同的人在不同地点、不同时间开发和改进同一个项目,并且在大部分的时间里,版本控制系统会聪明的帮你把不同的人在不同地点不同时间修改的代码融合到项目中去。(当然在一些特殊的情况,还是需要人去决定到底哪些代码需要加入到项目中,这个在后面讨论不迟,先让大家对版本控制有一个好印象,呵呵) 知道了版本控制系统的优点之后,下面就要具体实践和体验了。建议你选用的版本控制系统包括: rcs,cvs,svn,git,Mercurial,Bazzar等等。 当然git,Mercurial和Bazzar都是属于分布式版本控制系统。 下面是一些网友对于这些版本控制系统评论的只言片语: 1)svk配合svn可以实现分布式的版本控制。 2) 我是从SVN转到Git下的。我想Git的优势是速度飞快,谁用谁知道! 3) git的确是最快的,bzr慢的要死 4) SVN 在windows 下有TortoiseSVN 5) git 有Windows 版本,在google code 上的项目。https://www.360docs.net/doc/0812090632.html,/p/msysgit/ 6) 大家可以试试国内提供的git服务。https://www.360docs.net/doc/0812090632.html, 那么,简单地说,Git 究竟是怎样的一个系统呢?请注意,接下来的内容非常重要,若是理解了Git 的思想和基本的工作原理,用起来就会知其所以然,游刃

TortoiseGit使用教程详解

TortoiseGit入门教程--参考资料:TortoiseGit帮助文档

目录 1、关于版本控制 (3) 2、TortoiseGit安装: (3) 2、TortoiseGit文件夹图标说明: (9) 3、克隆远程库 (10) 4、对文件进行修改 (13) 5、提交更改。 (14) 6、push推送变更到库 (18) 7、从远程库更新 (19) 8、与远程库同步 (20) 9、解决冲突 (24) 10、TortoiseGitMegar (28) 11、查看本地文件与基础文件的差异 (31) 12、查看别人的修改 (37) 13、查看文件的所有修改者 (40) 14、导出某一版本的文件 (41) 15、慎用Clean Up (44) 16、.gitignore和不需提交的文件 (45) 17、附:删除windows凭据 (46)

1、关于版本控制 版本控制是管理信息修改的艺术,它一直是程序员最重要的工具,程序员经常会花时间作出小的修改,然后又在某一天取消了这些修改,想象一下一个开发者并行工作的团队 - 或许是同时工作在同一个文件!- 你就会明白为什么一个好的系统需要管理潜在的混乱。这是来自TortoiseSVN文档的一段话,总结得很精辟。 TortoiseGit 是一个 Windows 下的版本控制系统Git的客户端工具,正如其名字一样,小乌龟外面有一个壳,TortoiseGit也只是Git一个壳,使您更加方便的使用Git。Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。版本库就像一个常见的文件服务器,除了它保存你对文件和目录所有的改变。这一特性使得你可以恢复文件的旧版本并查看历史-谁在什么时间如何进行的修改。因此也可以说版本控制系统是一种“时间机器”。 TortoiseGit现在有多语言包可以下载,本文档使用英文版进行说明。 本文档是以个人经验参考官方文档整理出来的,可能会存在很多问题,如有理解不正确的地方希望能够指出,大家共同学习吧。2、TortoiseGit安装: 首先安装git for windows,下载地址:https://git-for-windows.github.io/

GitLab在windows用户端的安装使用详细教程_8877179

代码管理工具GitLab 可视化界面在 windows 安装教程 --作者:Able 1.Windows下TortoiseGit over Putty or Openssh提交项目到GitLab(可视化工具):(安装教程按照1进行) 具体安装教程: Windows下TortoiseGit over Putty or Openssh提交项目到GitLab Gitlab默认的配置推荐使用shell命令行与server端进行交互,作为搞SCM的表示无压力,但是作为开发人员还是比较适应windows的GUI图形管理,方便他们将注意力集中到代码编写上,所以今天刚好接着昨天给大家介绍一下使用windows下的git client工具实现将本地代码提交到远程服务器. 解决方案: 环境部署 操作系统Windows7 x64 Sp1 TortoiseGit TortoiseGit-1.8.11.0-64bit.msi Git Git-1.9.4-preview20140815.exe Putty PuTTY 0.63 OpenSSH owned by Git 下载地址: https://www.360docs.net/doc/0812090632.html,/QaaLGsd23BsWL(访问密码96d7) 注: 此处下载地址中的安装包都为64位版本,32位请另行下载. 一.部署前的准备工作 安装TortoiseGit,Git,Putty,默认下一步安装即可,其中Git为Git client环境安装包,确保w indows包含git环境. 二.配置PuTTY authentication agent 在安装TortoiseGit后,可以选择使用OpenSSH客户端还是使用Putty客户端,如果使用的是默认的Putty客户端,由于TortoiseGit GUI连接不支持server端自定义端口配置,若GitLab 使用的SSH端口为自定义端口,则需要使用PuTTY的authentication agent去做一个本地的端口转发. 1.首先使用TortoiseGit自带的Puttygen创建本地的公/私钥对

TortoiseGit使用入门教程

TortoiseGit入门教程 --参考资料:TortoiseGit帮助文档 边城浪子 二O一七年元月二十日 目录 1、关于版本控制 .................................................... 错误!未定义书签。 2、TortoiseGit安装:.......................................... 错误!未定义书签。 2、TortoiseGit文件夹图标说明: ...................... 错误!未定义书签。 3、克隆远程库 ........................................................ 错误!未定义书签。 4、对文件进行修改 ................................................ 错误!未定义书签。 5、提交更改。 ........................................................ 错误!未定义书签。 6、push推送变更到库............................................ 错误!未定义书签。 7、从远程库更新 .................................................... 错误!未定义书签。 8、与远程库同步 .................................................... 错误!未定义书签。 9、解决冲突 ............................................................ 错误!未定义书签。 10、TortoiseGitMegar........................................... 错误!未定义书签。 11、查看本地文件与基础文件的差异 ................... 错误!未定义书签。 12、查看别人的修改............................................... 错误!未定义书签。 13、查看文件的所有修改者................................... 错误!未定义书签。 14、导出某一版本的文件....................................... 错误!未定义书签。 15、慎用Clean Up ................................................. 错误!未定义书签。

Git菜鸟学习教程

Git菜鸟教程 作为一个Git的新手。写这份教程也是我自己学习和摸索git的过程,其中基于Git进行合作开发的模式参考了CVS,应该是很初级的合作模式。但是当前自己也只能做到这一步了。教程所述都是自己通过试验验证的。至少可以满足公司基本的合作开发。教程写完后,谢欣说可以放到blog与大家共享。我觉得是个不错的主意。一方面我觉得这个文档应该可以给git 的新手一些帮助,另一方面也欢迎git的大牛指点。这里要感谢《Git中文教程》的作者。还有概述中关于git的优点描述拷贝了网络上某位大牛的原话,但是拷贝的出处也是转载的,就在这里谢谢那位我不知名大牛了。 下面就开始了。 1.概述 对于软件版本管理工具,酷讯决定摒弃CVS而转向Git了。 为什么要选择Git?你真正学会使用Git时,你就会觉得这个问题的回答是非常自然的。然而当真正需要用文字来回答时,却觉得文字好像不是那么够用。咳,该则么回答呢? 其实,关键的问题不在于如何回答这个问题。问题的关键是公司已经决定使用它了。那么,我们的程序员们!请开动你们的浏览器,请拿出你的搜索引擎工具,去自己发掘答案吧。在这里,我只能给你们一个最朦胧的感觉。 Git和CVS、SVN不同,是一个分布式的源代码管理工具。Linux内核的代码就是用Git 管理的。它很强,也很快。它给我们带来的直接好处有: 1.傻瓜都会的初始化,git init,git commit-a,就完了。对于随便写两行代码就要放到代码管理工具里的人来说,再合适不过。也可以拿git做备份系统,或者同步两台机器的文档,都很方便。 2.绝大部分操作在本地完成,不用和集中的代码管理服务器交互,终于可以随时随地大胆地check in代码了。只有最终完成的版本才需要向一个中心的集中的代码管理服务器提交。 3.每次提交都会对所有代码创建一个唯一的commit id。不像CVS那样都是对单个文件分别进行版本的更改。所以你可以一次性将某次提交前的所有代码check出来,而不用考虑到底提交过那些文件。(其实SVN也可以做到这点) 4.branch管理容易多了,无论是建立新的branch,还是在branch之间切换都一条命令完成,不需要建立多余的目录。 5.branch之间merge时,不仅代码会merge在一起,check in历史也会保留,这点非常重要。 6.…太多了 当然,Git也会带给我们一些困难,首先,你想要使用好git,就要真正明白它的原理,理解它的观念,对以那些CVS的熟手来说,改变你已经固有的纯集中式源代码管理的观念尤为重要,同时也会让你觉得有些困难。在使用git的初期,你可能会觉得有些困难,但等你逐渐明白它时,你绝对会喜欢上它。这是一定的,就像我问你“喜欢一个温吞如水、毫无感觉的主妇,还是喜欢一个奔放如火,让你爱的痴狂恨的牙痒的情人”一样毋庸置疑。 下面,就让我们进入学习Git之旅… 请记住,这只是一个非常简单而且初级的教程,想要成为git的专家,需要各位同事不断的自己深入挖掘。 2.Git基础命令 2.1创建Git库—git-init

git安装和配置图文教程

Git的安装和配置步骤 1.运行GitExtensions241SetupComplete.msi,在出现的对话框中点击run 2.进入欢迎页面单击next 3.进入Installation Scope界面选择Install for all users of this machine单击next

4.进入Required Software界面,勾选Install MsysGit和Install KDiff,单击next 5.进入选择安装目录界面,按默认路径,单击next 6.进入Custom Setup界面,按默认设置,单击next

7.进入Select SSH Clinet界面,选择OpenSSH,单击next 8.开始安装,单击Install 9.KDiff3安装,进入许可证协议界面,单击‘我接受’

10.进入选择组件页面,按默认设置,单击下一步 11.选择安装路径,按默认设置,单击下一步 12.勾选Install for all users,单击下一步

13.是否创建开始菜单中的快捷方式,勾选不要创建快捷方式,单击安装 14.完成安装向导,单击完成 15.进入Git Setup Wizard界面,单击next

16.进入Select Components界面,按默认设置,单击next 17.进入Adjusting your PATH environment选择Use Git Bash Only,单击next 18.进入Configuring the line ending conversions,按默认设置,单击next

Git-简单使用教程(个人独享版)

Windows下Git和Gitlab简单教程 ---jack杨俊伟在使用之前,因为大家之前用的都是SVN集中式的版本控制系统,而git是分布式的,但在使用和功能上差异没有特别大,这里需要先简单了解它们的差异。 1)最核心的区别Git是分布式的,而Svn不是分布的。Git跟Svn一样有自己的集中 式版本库和Server端,但Git更倾向于分布式开发,因为每一个开发人员的电脑上都有一个Local Repository,所以即使没有网络也一样可以Commit,查看历史版本记录,创建项目分支等操作,等网络再次连接上Push到Server端。 2)Git把内容按元数据方式存储,而SVN是按文件:因为,.git目录是处于你的机器上 的一个克隆版的版本库,它拥有中心版本库上所有的东西,例如标签,分支,版本记录等。.git目录的体积大小跟.svn比较,你会发现它们差距很大。 3)Git没有一个全局版本号,而SVN有。Git的内容的完整性要优于SVN: GIT的内 容存储使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。Git下载下来后,在OffLine状态下可以看到所有的Log,SVN不可以。 4)SVN必须先Update才能Commit,忘记了合并时就会出现一些错误,git还是比较 少的出现这种情况。 5)克隆一份全新的目录以同样拥有五个分支来说,SVN是同时复製5个版本的文件, 也就是说重复五次同样的动作。而Git只是获取文件的每个版本的元素 6)提交(Commit)在SVN,当你提交你的完成品时,它将直接记录到中央版本库。 当你发现你的完成品存在严重问题时,你已经无法阻止事情的发生了。如果网路中断,你根本没办法提交!而Git的提交完全属於本地版本库的活动。而你只需“推”

git详细教程

Contents 一、自述 (2) 二、白话概念 (3) 三、我使用的命令 (4) 四、Git的基本使用1—直接在主分支上操作,无需merge,无其他人修改主分支 (5) 五、Git基本使用2—重复上面的步骤 (8) 六、Git 的基本使用3:---新建工作分支,做改动,然后merge,模拟有人修改master,无冲突 10 七、Git的基本使用4:工作分支改动,然后merge,模拟改master,有冲突(同一文件同一行) (15) 八、Git 的基本使用5:工作分支改动,然后merge,模拟改master,有冲突(同一文件不同行) (18) 九、Git 的基本使用6:---谁动了我的master? (19) 十、现在你能分析整个过程吗? (22) Doc name: 《git:菜鸟教菜鸟》 Author: Armand Wang Date: July 30, 2013 E-mail: ww_zidongkong@https://www.360docs.net/doc/0812090632.html, Any advice rendered would be greatly appreciated. Thank you!

版本控制的最大好处就是让你永远可以后悔 ----某大牛 一、自述 Git工具结束了‘小作坊’式的生产,我们不在使用copy来保存各个版本,特别是大工程协作开发时,这种方式也是不可行的。每一次commit产生的snapshot都可以迅速保存当前的版本状态,它使用了如此精妙的算法和数据结构可以像‘照照片’一样快速的记录细微或庞大的改动,你可以通过git log 展示的tag,回到任何一个你想回到版本。大家都在对master分支上的code进行修改,贡献自己的力量,人与人的想法不同,当修改了同一个地方的时候,就会有冲突。这样就需要你merge,你对?他对?或者都保留?这取决于你。恢复版本、分布控制(包括冲突解决)、分支方案,是我认为git的三大特色。 Git是个工具,我们不必要知道它的实现,也不必要了解太多概念,经过运用后形成的感性认识是最重要的,所以我决定写一些自己的直观感受和一己之见,绝非技术博客,倒可以是新手的入门文章,我不保证措辞标准,但是看下去,会用没问题。 我也是刚学git,只会一些简单的命令,但目前已经满足了我的工作需要,学习状态大致经历了三个阶段: 1,开始的时候完全不明白,只知道source code在远端,可以通过git clone down下来,可以通过git reset –hard 恢复最初的状态。 2,知道了git status/add/commit/push/pull等基本操作,可以糊里糊涂的push和pull。但是对于仓库,分支的概念很不清晰,也不会解决冲突。这一阶段多亏了实验室一个同学的帮助和github的教程。 3,相当于柳暗花明的阶段,是读了一篇博文,知道了add在干嘛,commit又是干嘛,最重要学习了一条指令,gitk –all,这是git 的GUI,上面的code line让我彻底明白了分支和commit的概念,当我使用git checkout 切换分支,发现仓库的内容竟然悄无声息的发生了改变。我瞬间明白了到底怎么回事。每个分支都有自己的成长记录(git log),我可以通过git checkout +ID回到该分支的任何历史状态,此时你打开本地的仓库文件夹,它呈现的就是你所切换到的分支,你所要求的状态。在GUI上一切都用code line的方式体现出来,我的我的小伙伴们简直都惊呆了。 首先,推荐一个代码的公共托管平台github,这是世界知名的以git为基础的编程服务中心,是很多程序员的最爱,你可以注册账号,就可以在上面建立server端的仓库,然后clone到本地,管理自己的代码。网址是:https://https://www.360docs.net/doc/0812090632.html,/既然是公共平台,我也没有放置重要的代码在上面,所以我的账号可以给你们用。账户名称:armand-wang 密码是 weide_332020865.我已经新建了一个仓库,名字叫learngit,你们可以使用 git clone git@https://www.360docs.net/doc/0812090632.html,:armand-wang/learngit.git 把仓库clone到本地。

git教程

教程:在CentOS 5上安装Git Git是Linus.Torvald为了管理Linux内核发起并开发的一个开源分布式版本控件系统,作为分布式版本控制系统的重要代表——Git已经为越来越多的人所认识,它不同于我们熟悉的CVS、SVN和同时分布式控制系统的Mercurial。既然现在都流行这个Git分布式版本控制系统,我也在服务器上装一个学一下。 首先安装Git依赖的一些包。 yum install zlib-devel yum install openssl-devel yum install perl yum install cpio yum install expat-devel yum install gettext-devel 接下来,如果你已经安装过Curl了,那么跳过这一步,没有的话,就装一下。(可以yum安装) wget http://curl.haxx.se/download/curl-7.18.0.tar.gz tar xzvf curl-7.18.0.tar.gz cd curl-7.18.0 ./configure make make install

确定一下ld.so.conf文件里有/usr/local/lib,这个是为git-http-push准备的。 vi /etc/ld.so.conf #插入下面的代码 /usr/local/lib 保存文件,接着运行: /sbin/ldconfig 最后,我们下载Git并安装它 wget https://www.360docs.net/doc/0812090632.html,/projects/git-snapshots/git/git-latest.tar.gz tar xzvf git-latest.tar.gz cd git-{date}(这里的{date}指的是版本的时间) autoconf(如果终端提示no command的话就yum install autoconf,千万不要以为文件夹中有makefile就好直接make了,不然会出错的) ./configure --with-curl=/usr/local make make install 初识版本控制系统Git Git 是用于Linux 内核开发的版本控制工具。与常用的版本控制工具CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。本文是《Git Community Book》的译者刘辉在InfoQ上发表的一篇专栏文章,整个系列名为《Git历险记》。本文是系列第一篇,对Git的历史、特点和作者的使用心得进行了概述。以下为正文。 作为分布式版本控制系统的重要代表——Git已经为越来越多的人所认识,它相对于我们熟悉的CVS、SVN甚至同时分布式控制系统的Mercurial,有哪些优势和不足呢。Git是Linus.Torvald为了管理Linux内核发起并开发的一个开源分布式版本控件系统(DVCS)。从2002年起,Linux 内核一直使用BitKeeper来进行版本管理,但是在2005年BitKeeper和Linux 内核开源社区的合作关系结束,BitKeeper再也不能免费使用了,这迫使Linus决定开发一个开源界自已的版本控制系统。 传统的SVN、CVS 等版本控制系统,只有一个仓库(repository),用户必须要连上这个仓库才能开始提交;而Git之类的分布式版本控制系统(当然也还包括BitKeeper、Mercurial等等),它的每个工作目录都包含一个完整的仓库,它们可以支持离线工作,先把工作提交到本地仓库后再提交上远程的

Gitblit服务器搭建和git使用教程

Gitblit服务器搭建和git使用教程 1.大纲 目前做代码管理的主流是Git,GIthub付费才能不被开源,所以在小范围内或者小型开发团队可以使用Gitblit搭建自己的私人服务器。以下是教程: 需要的安装工具如下 2.安装JDK,配置JAVA环境 默认安装即可。 安装成功后找到安装路径,配置环境变量

右击计算机-->属性-->高级系统配置,点开后 环境变量下面的系统变量

新建 确定保存后CMD一下,输入JAVAC回车,如下图所示则环境配置成功

3.Gitblit服务器搭建 去官网https://www.360docs.net/doc/0812090632.html,/下载最新的压缩包,并在Windows 上搭建 1)下载 2)解压到合适的目录下,如: 3)创建一个目录来存放代码库: E:/GitRepository 4)修改data目录下的gitblit.properties E:\Gitblit\gitblit-1.7.1\data \gitblit.properties 添加红色部分 # # GITBLIT.PROPERTIES # # Define your custom settings in this file and/or include settings defined in # other properties files. # # Include Gitblit's 'defaults.properties' within your configuration. # # NOTE: Gitblit will not automatically reload "included" properties. Gitblit # only watches the 'gitblit.properties' file for modifications. # # Paths may be relative to the ${baseFolder} or they may be absolute. # # COMMA-DELIMITED # SINCE 1.7.0 include = defaults.properties #

Git Gui教程

前言 之前一直想一篇这样的东西,因为最初接触时,我也认真看了廖雪峰的教程,但是似乎我觉得讲得有点多,而且还是会给我带来很多多余且重复的操作负担,所以我希望能压缩一下它在我工作中的成本,但是搜索了一下并没有找到满意的教程,新的一年自己梳理一下自己的经验。 可能男生们大神比较多,觉得Git是如此简单,便已觉得命令行操作就是SO EASY,甚至或许有看不起可视化这样面对低端用户的心理,好的,那您就当我是水货可以右上角了。我一直觉得类似GIT这样的东西,他对于我而言只是个不完全必须的工具,我并不想成为使用他的专家,类似的东西,今天有GIT,明天可能有GAT,或者GAY?所以快速地掌握它我需要的重要日常操作,最好是10分钟,那就好了,如果你有类似的想法,好吧,那不要废话了,咱们赶紧开始。 (全文限windows系统。) 何为GIT? 安装GIT,大致了解下GIT是做某子的。 权限校验 首先,您的数据保存在远端服务器一份,服务器需要对您的身份识别。一段RSA加密字符串。启动GUI,菜单-帮助,【Step1-创建密钥】Generate SSH KEY

【Step2-添加密钥】去你的代码托管服务器,你的账号设置中,添加它。 比如在Github中的地址,title随意,比如你可以用Home,company等作为标识来区别。

Gitlab中的演示

账号保存 如果不做设置的话,每次提交的时候,都会询问你填写密码。于是我们先来把这个设置好。【Step3.1-添加环境变量】 我的电脑- 属性- 高级系统设置- 环境变量- 新建变量 变量名HOME,变量值%USERPROFILE%

git的使用教程

GitLab基础使用教程 目录 1、GitLab开发版本管理服务器 (2) 2、添加本地域名解析 (2) 3、修改密码并重新登录 (3) 4、Git Bash下使用Gitlab (3) 5、MyEclipse中使用Gitlab (9) 6、两个重要的文件 (28)

1、GitLab开发版本管理服务器 GitLab,是一个利用 Ruby on Ra ils 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。 我们的GitLab开发版本管理服务器:http://opc/,通过Web浏览器访问我们的GitLab界面 2、添加本地域名解析 到系统目录C:\Windows\System32\drivers\etc下,拷贝出hosts文件,编辑hosts文件,添加“192.168.222.89 opc”行(,回车确保这一行IP映射生效,另存为时注意:1)无后缀名;2)保存编码为ASCII编码格式。 此时,在浏览器中直接输入http://opc/”即可进入我们的GitLab

3、修改密码并重新登录 管理员帮你注册后,你的注册邮箱会收到一封来自GitLab的邮件,邮件中包含登陆地址、首次登陆用的密码(系统随机生成的) 必须使用初始密码登陆后修改登陆密码,然后用新密码登陆即可。 4、Git Bash下使用Gitlab 1、在Windows下安装Git客户端软件 在你的Windows机器上,为了能够方便的检入检出项目,需要安装Git客户端软件,安装完之后会生成 2、生成SSH密钥验证身份 如果你想进行代码的上传与下载等操作,需要你把自己的ssh key导入到gitlab里,方法如下:(Linux下生成方式相同,在自己的home目录下输入该命令即可)打开上步安装生成的Git Bash,输入ssh-keygen -t rsa -C "YOUR EMAIL ADDRESS”,YOUR EMAIL ADDRESS是你的邮箱地址,一直回车即可,此命令在C:\Users\<你的用户名>\.ssh目录下生成一对公私密钥,拷贝公钥(.pub结尾的文件)的

StGit教程_CN

原文:StGit tutorial 翻译:tekkamanninja@https://www.360docs.net/doc/0812090632.html, 翻译完成时间:2011年12月25日星期日 V1.0

目录 获取帮助 (3) 开始使用 (3) 创建一个补丁 (3) 创建另一个补丁 (4) 更新提交信息 (5) 冲突 (5) 工作流程:开发分支 (7) 工作流程:跟踪分支 (8) 向上游提交补丁 (8) 衍合补丁序列 (9) 当你的补丁被采纳 (9) 导入补丁 (10) 导入一个纯补丁 (10) 一次导入多个补丁 (10) 从一封电子邮件中导入补丁 (10) 导入满载补丁的mailbox文件 (10) 其他需要提及的事项 (11) 撤销操作 (11) 同Git交互 (11) 补丁相关 (11) 模板 (12)

StGit是一个命令行应用程序,提供类似Quilt的功能(比如从一个补丁栈中入栈/出栈补丁),但使用Git代替diff和patch 工具。StGit将他的补丁作为普通的Git提交保存在Git仓库中,并提供一系列命令以各种方式操纵他们。 这个教程假设你已经熟悉Git的基本知识(如分支、提交和冲突)。关于Git的详细信息,请参考git(1)或the Git home page。 获取帮助 获取完整的StGit命令列表: $ stg help 获取单个StGit子命令的快速帮助: $ stg help 获取一个StGit子命令的详细帮助: $ man stg- (详细文档也可通过HTML 格式获得) 开始使用 StGit不是一个可单独使用的程序——他操作一个已用git init 或git clone创建好的Git仓库。所以请先获取一个这样的仓库;如果你手头没有,试试下面的范例: $ git clone git://repo.or.cz/stgit.git $ cd stgit 在创建StGit补丁前,你必须先运行stg init: $ stg init 这个命令针对当前分支初始化StGit的元数据。(如果还想获得另一分支的StGit补丁,你必须到另一个分支中再次运行stg init。) 注作为快捷指令,stg clone将会在执行git clone后运行stg init。 创建一个补丁 现在准备创建我们的第一个补丁: $ stg new my-first-patch 这将会创建一个名为my-first-patch的补丁,并且打开一个编辑器让你编辑补丁的提交信息。(如果你没有在命令行中给出补丁名,StGit 将会自动通过提交信息的第一行生成补丁名。)这个补丁是空的,可以通过运行stg show命令看出。 $ stg show 但这不会保持太久!用你中意的文本编辑器打开一个文件(译者注:已被跟踪的文件),做些修改并保存。此时,你的代码树中就有了本地的变更: $ stg status M stgit/main.py 然后refresh(刷新)补丁: $ stg refresh 瞧 - 这个补丁不再是空的: $ stg show commit 3de32068c600d40d8af2a9cf1f1c762570ae9610 Author: Audrey U. Thor Date: Sat Oct 4 16:10:54 2008 +0200 Tell the world that I've made a patch diff --git a/stgit/main.py b/stgit/main.py

相关主题
相关文档
最新文档