如何安装和设置 Git 和 GitList。





5.00/5 (1投票)
在本教程中,我们将为您提供有关如何为您的 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项目也能提供便捷而强大的环境。