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
版本已成功推送。