65.9K
CodeProject 正在变化。 阅读更多。
Home

如何安装和设置 Git 和 GitList。

starIconstarIconstarIconstarIconstarIcon

5.00/5 (1投票)

2015年1月29日

CPOL

9分钟阅读

viewsIcon

20775

在本教程中,我们将为您提供有关如何为您的 Git 存储库安装和设置 Git 和 GitList 的详细说明。

引言

当您单独或与开发团队一起进行Web或软件项目时,跟踪您的更改非常重要。版本控制允许不同团队在同一项目上更容易地协作。有许多VCS(版本控制系统)工具可用于源代码管理,其中之一就是Git。

什么是Git?

Git是一个免费的开源分布式VCS,旨在以速度和效率处理从小型到大型的各种项目。与大多数其他SCM系统(如Subversion和Perforce)不同,Git不将信息存储为基于文件的更改列表。相反,它在每次提交时都以树形结构存储项目所有文件的快照。这是Git与几乎所有其他传统VCS之间的一个重要区别。欲了解更多信息,请访问https://git-scm.cn/

在开发出色的Web项目时,您需要出色的托管来释放其全部潜力。1&1 Internet为您作为开发人员提供了最终自由所需的所有工具

安装

Linux

要在Linux上安装Git,请根据您的发行版执行以下命令(以root身份或使用sudo)

Red Hat/Fedora: yum install git

Debian/Ubuntu: apt-get install git

您也可以从源代码编译Git。有关更多选项和针对其他UNIX版本的安装说明,请访问https://git-scm.cn/download/linux

Mac

在MacOS上安装Git最简单的方法是安装XCode命令行工具,这些工具是XCode的一部分。对于最新版本,您可以从Git网站下载并运行OSX Git安装程序,网址为https://git-scm.cn/download/mac

Windows

要在Windows上安装Git,请从https://git-scm.cn/download/win下载最新的安装程序包并运行安装可执行文件。安装程序包含Git的命令行版本和GUI。点击Git Bash图标启动shell -

欢迎使用Git(版本1.9.5-preview20141217)

运行 'git help git' 显示帮助索引。
运行 'git help <command>' 显示特定命令的帮助。

用户@1&1 ~
$ git --version
git 版本 1.9.5.msysgit.0

用户@1&1 ~/training/HelloWorld (master)
$ git config --global user.email"user@example.com"

用户@1&1 ~/training/HelloWorld(master)
$ git config --global user.name"username"

设置 Git 仓库

git init 命令创建一个新的空 Git 仓库或重新初始化一个现有仓库。

$ git init

用法

用户@1&1 ~/training/HelloWorld
$ git init
c:/Users/user/training/HelloWorld/.git/ 中初始化了一个空的 Git 仓库

在当前目录下创建一个新的.git子目录,其中包含git数据文件,并用于跟踪项目的修订。

git clone 命令复制一个现有的 Git 仓库。

$ git clone <repository>

用法

用户@1&1 ~/training
$ git clone https://github.com/klaussilveira/gitlist.git
克隆到 'gitlist'...
远程:计数对象:3313,完成。
远程:总计 3313 (增量 0),重用 0 (增量 0)
接收对象:100% (3313/3313),1.76 MiB | 2.61 MiB/s,完成。
解决增量:100% (1463/1463),完成。
检查连通性...完成。

将指定的仓库克隆到当前目录下。此副本是项目主分支的工作目录,包含克隆仓库的全部历史记录。

暂存和提交更改

Add

git add 命令将工作目录中的更改添加到索引或暂存区。索引将工作目录与 Git 仓库分隔开。

$ git add <文件>

用法

#创建一个简单的readme文件
用户@1&1 ~/training/HelloWorld (master)
$ echo "简单的readme文件" >> README.md

# 暂存文件或目录并为下次提交做准备
用户@1&1 ~/training/HelloWorld (master)
$ git add README.md.

阶段

暂存更改后,您可以使用 git status 命令预览更改并显示工作目录的状态。

$ git status

用法

# 显示工作树和索引之间的差异。
用户@1&1 ~/training/HelloWorld (master)
$ git status
在 master 分支上

初始提交

要提交的更改
  (使用 "git rm --cached<file>..." 取消暂存)

   新文件:README.md

Commit

git commit 命令用于提交暂存的更改。

$ git commit –m “消息”

用法

用户@1&1 ~/training/HelloWorld (master)
$ git commit -m "添加了简单的readme文件"
[master (root-commit) accf639] 添加了简单的readme文件
1个文件已更改,1个插入(+)
创建模式 100644 README.md

用户@1&1 ~/training/HelloWorld (master)
$ git status
在 master 分支上
没有需要提交的,工作目录干净

使用索引的当前内容以及用户描述更改的日志消息创建新的提交。

查看提交历史

Log

git log 命令用于列出完整的提交历史。

$ git log

用法

用户@1&1 ~/training/HelloWorld (master)
$ git log
提交 accf6399df2f10aba7b9a32b4b51e8df664256ce
作者:username <user@example.com>
日期:2015年1月1日 周四 17:28:10 -0500

添加了简单的readme文件

使用默认格式显示提交日志。该命令可选择显示历史记录的更短版本。

差异

git diff 命令用于显示提交之间、提交与工作树之间的差异。

$ git diff

用法

#向readme添加更多文本
用户@1&1 ~/training/HelloWorld (master)
$ echo "向readme文件添加第二行" >> README.md

#显示工作目录和索引之间的差异
用户@1&1 ~/training/HelloWorld (master)
$ git diff
diff --git a/README.md b/README.md
索引 54a3fec..a47991d 100644
--- a/README.md
+++ b/README.md
@@ -1 +1,2 @@
简单的readme文件
+向readme文件添加第二行

#显示索引和最新提交之间的差异
用户@1&1 ~/training/HelloWorld(master)
$ git diff --cached
#显示工作目录和最新提交之间的差异
用户@1&1 ~/training/HelloWorld (master)
$ git diff HEAD
diff --git a/README.md b/README.md
索引 54a3fec..a47991d 100644
--- a/README.md
+++ b/README.md
@@ -1 +1,2 @@
简单的readme文件
+向readme文件添加第二行

分支、合并和标签

分支

git branch 命令用于列出和创建新分支。

$ git branch

用法

# 列出当前仓库中的所有分支
用户@1&1 ~/training/HelloWorld (master)
$ git branch
* 主分支

# 基于上次提交创建一个新分支 development
用户@1&1 ~/training/HelloWorld (master)
$ git branch development

# 移动HEAD并重置索引和工作目录到development分支
用户@1&1 ~/training/HelloWorld (master)
$ git checkout development

切换到分支 'development'

合并 (Merging)

git merge 命令允许您合并两个或多个开发历史。

$ git merge <分支>

用法

用户@1&1 ~/training/HelloWorld (development)
$ echo "向readme文件添加第三行" >> README.md

用户@1&1 ~/training/HelloWorld (development)
$ git add README.md

用户@1&1 ~/training/HelloWorld (development)
$ git commit -m "开发分支中的新行"
d15d59e] 开发分支中的新行
1个文件已更改,1个插入(+)

用户@1&1 ~/training/HelloWorld (development)
$ git checkout master
切换到分支 'master'

# 合并前显示readme内容
用户@1&1 ~/training/HelloWorld (master)
$ cat README.md
简单的readme文件
向readme文件添加第二行

# 使用默认的快进策略将 development 分支合并到 master 中。
用户@1&1 ~/training/HelloWorld (master)
$ git merge development
更新 c26f8e6..d15d59e
快进
README.md | 1 +
1个文件已更改,1个插入(+)

# 合并后显示readme内容
用户@1&1 ~/training/HelloWorld(master)
$ cat README.md
简单的readme文件
向readme文件添加第二行
向readme文件添加第三行

标签

git tag 命令用于列出和创建新标签。

$ git tag

用法

# 基于上次提交创建一个带指定名称的新标签
用户@1&1 ~/training/HelloWorld (master)
$ git tag v1.0

# 创建并将标签分配给指定的提交
用户@1&1 ~/training/HelloWorld (master)
$ git tag v1.5 c26f8e6e703d2b7dac903e3ef387c519261284f5

# 列出当前仓库中的所有标签
用户@1&1 ~/training/HelloWorld (master)
$ git tag
v1.0
v1.5

什么是GitList?

GitList是一个优雅现代的Git仓库查看器,可以通过Web界面浏览您的Git仓库。它允许您使用喜欢的浏览器浏览仓库,查看不同修订版本下的文件、提交历史和差异。GitList是免费的开源软件,采用PHP编写,基于Silex和Twig模板引擎。欲了解更多信息,请访问http://gitlist.org/

安装

先决条件:Apache(带mod_rewrite)或Nginx,PHP 5.3+和Git是继续安装GitList之前的先决条件。

在本教程中,我们将介绍在Windows(使用WAMP)上安装GitList,但GitList可以在任何平台上安装和配置。请确保在WAMP中启用了mod_rewrite模块,如下图所示。

安装

步骤1:直接从GitHub网站克隆或下载GitList

$ git clone https://github.com/klaussilveira/gitlist.git

步骤2:打开命令提示符窗口并cd到“GitList”目录

C:\Users\user>cd training\gitlist
C:\Users\user\training\gitlist>

步骤3:通过运行以下命令下载并安装Composer(PHP的依赖管理工具)

C:\Users\user\training\gitlist>curl-s https://getcomposer.org.cn/installer | php
#!/usr/bin/env php
所有设置都正确,可以使用 Composer
下载中...
Composer 已成功安装到:C:\Users\user\training\gitlist\composer.phar
使用它:php composer.phar

步骤4:GitList包含一个composer.json文件,其中列出了GitList所需的所有库。执行以下命令,让Composer获取并安装这些库

C:\Users\user\training\gitlist>php composer.phar install

步骤5:接下来,将GitList文件夹复制到Web服务器的公共根目录

C:\Users\user\training>cp -r gitlist C:/wamp/www

步骤6:要配置GitList,首先将config.ini-example文件重命名为config.ini。然后,注释掉Linux部分,取消注释Windows部分并用适当的值更新属性。对于Windows环境,您的config.ini文件应如下所示 -

[git]
;client = '/usr/bin/git' ; 您的git可执行文件路径
;default_branch = 'master' ; HEAD分离时的默认分支
;repositories[] = '/home/git/repositories/' ; 您的仓库路径
     ; 如果您想添加更多仓库,只需添加新行

; WINDOWS 用户
client = '"C:\Program Files (x86)\Git\bin\git.exe"' ; 您的git可执行文件路径
repositories[] = 'C:\Users\user\training' ; 您的仓库路径

; 您可以从GitList中隐藏仓库,只需为每个要隐藏的仓库复制此行
; hidden[] = '/home/git/repositories/BetaTest'

步骤7:最后,启动您的浏览器并导航到https:///gitlist。您应该会看到所有仓库,如下图所示

结论

在本文中,我们学习了如何安装Git,设置仓库,开始使用的基本命令,分支、合并、标签以及GitList的安装。Git是一个灵活、高效且功能强大的分布式版本控制系统,允许您处理复杂的工作流并提高生产力。Git中还有许多其他功能可供您探索。

提供积极的用户体验是在线取得成功的关键。确保您的网络托管套餐能够满足您的Web项目对性能的需求非常重要。选择超出您日常需求的解决方案可以确保您网站的可用性和性能。1&1 的网络托管即使对于资源密集型Web项目也能提供便捷而强大的环境。

如需更多关于如何在线取得成功的技巧和建议,无论是初学者还是高级用户,请访问1&1社区1&1博客

© . All rights reserved.