Git 是目前最流行的版本控制工具,而 GitHub、GitLab 等托管平台为团队协作提供了极大的便利。但在某些情况下,我们需要自建 Git 仓库托管平台,例如:
-
保护私有代码,避免托管到公网
-
提供企业或学校内部协作
-
提升对 Git 服务器的管理和控制能力
Git 基本用法介绍
1. Git 简介
Git 是目前最流行的分布式版本控制系统,它由 Linus Torvalds(Linux 之父)于 2005 年开发。Git 允许多个开发者协作开发项目,跟踪代码变更,管理不同版本的代码。
2. Git 安装与配置
2.1 安装 Git
-
Windows 用户可以从 Git 官网 下载并安装。
-
macOS 用户可以使用 Homebrew 安装:
brew install git
-
Linux 用户可以使用包管理器安装,例如 Ubuntu:
sudo apt install git
2.2 配置 Git
安装完成后,需要进行基本的用户信息配置:
git config --global user.name "你的用户名"
git config --global user.email "你的邮箱"
3. Git 常用命令
3.1 初始化仓库
在一个目录下初始化 Git 仓库:
git init
这将在该目录下创建一个 .git
文件夹,存储 Git 版本控制相关的文件。
3.2 克隆远程仓库
如果需要获取远程 Git 仓库,可以使用 git clone
命令:
git clone <仓库地址>
例如克隆一个 GitHub 仓库:
git clone https://github.com/user/repo.git
3.3 添加文件到暂存区
修改或新建文件后,需要先添加到暂存区:
git add <文件名>
添加所有修改:
git add .
3.4 提交更改
将暂存区的文件提交到本地仓库:
git commit -m "提交信息"
3.5 查看状态
查看当前工作区状态,包括已修改、未跟踪的文件等:
git status
3.6 查看提交记录
查看提交历史:
git log
3.7 远程仓库操作
(1)关联远程仓库
如果本地仓库没有关联远程仓库,可以手动添加:
git remote add origin <远程仓库地址>
(2) 推送代码
将本地提交推送到远程仓库:
git push origin main
(3) 拉取代码
从远程仓库获取最新代码:
git pull origin main
3.8 分支管理
(1)创建新分支
git branch <分支名>
(2)切换分支
git checkout <分支名>
或者使用 switch
命令(较新版本推荐):
git switch <分支名>
(3)合并分支
git merge <分支名>
(4) 删除分支
git branch -d <分支名>
3.9 撤销与回滚
(1) 撤销暂存
如果已经 git add
但还未提交,可以撤销暂存:
git reset HEAD <文件名>
(2) 撤销最后一次提交
如果想撤销上一次提交但保留文件修改:
git reset --soft HEAD~1
如果想撤销提交并清除修改:
git reset --hard HEAD~1
(3) 回滚到某个历史提交
使用 git log
找到提交 ID,然后执行:
git reset --hard <提交ID>
搭建 DevStar
1、 环境准备
(1)安装依赖
本实验将在 Linux 服务器(Ubuntu 20.04)上搭建 DevStar,安装以下依赖:
sudo apt update
sudo apt install -y git gcc make g++ cmake libssl-dev
(2)下载并编译 DevStar
git clone https://github.com/mengning/DevStar.git
cd DevStar
make
(3)启动 DevStar 服务器
./bin/DevStarServer 8080 & # 在后台运行,端口 8080
(4)访问 DevStar
打开浏览器,访问 http://<服务器IP>:8080/
,即可看到 DevStar 的 Web 界面。
2. Git 操作演示:从创建仓库到发布版本
2.1 在 DevStar 上创建 Git 仓库
-
访问
http://<服务器IP>:8080/
。 -
创建一个新的 Git 仓库,例如
myproject
。
2.2 在本地初始化 Git 仓库
git init myproject
cd myproject
2.3 配置用户信息
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
2.4 添加远程仓库
git remote add origin http://<服务器IP>:8080/git/myproject.git
2.5 创建代码文件并提交
echo "# MyProject" > README.md
echo "print('Hello, Git!')" > main.py
git add README.md main.py
git commit -m "初始化项目,添加 README 和 main.py"
2.6 推送代码到远程仓库
git push -u origin master
2.7 创建新分支并进行开发
git checkout -b feature-branch
echo "# 新功能开发" > feature.txt
git add feature.txt
git commit -m "添加新功能"
2.8 合并新功能到主分支
git checkout master
git merge feature-branch
git push origin master
2.9 处理合并冲突(如果有冲突)
如果 git merge
过程中发生冲突,Git 会提示冲突文件,手动编辑文件解决冲突后执行:
git add <冲突文件>
git commit -m "解决合并冲突"
git push origin master
2.10 创建标签并发布版本
git tag -a v1.0 -m "发布 v1.0 版本"
git push origin v1.0
2.11 在 DevStar 上查看提交历史和标签
-
访问
http://<服务器IP>:8080/git/myproject.git
。 -
查看提交记录,确认
v1.0
版本已成功推送。