☰
Git与Gitee环境搭建及代码管理全指南
2026/11/5 7:11:20 网站建设 项目流程

1. Git与Gitee基础环境搭建

1.1 Linux系统Git安装与配置

在Linux系统上使用Git前,需要先确保Git客户端已正确安装。不同发行版的安装命令略有差异:

# Ubuntu/Debian系 sudo apt update && sudo apt install -y git # CentOS/RHEL系 sudo yum install -y git # Arch Linux sudo pacman -S git

安装完成后需要进行基础身份配置,这些信息会出现在每次提交记录中:

git config --global user.name "你的用户名" git config --global user.email "你的邮箱" git config --global core.editor vim # 设置默认文本编辑器

提示:使用--global参数会将配置保存在~/.gitconfig文件中,如需针对特定项目使用不同身份,可在项目目录下执行不带--global的相同命令。

1.2 SSH密钥生成与配置

安全推送代码到Gitee推荐使用SSH协议,首先需要生成密钥对:

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

执行后会提示保存位置(默认~/.ssh/id_rsa)和设置密码(可选)。生成后需要将公钥添加到Gitee:

  1. 查看公钥内容:cat ~/.ssh/id_rsa.pub
  2. 登录Gitee → 右上角头像 → 设置 → SSH公钥
  3. 粘贴公钥内容,标题自动生成或手动填写

验证连接是否成功:

ssh -T git@gitee.com

首次连接会提示确认指纹信息,输入yes后应看到欢迎信息。

2. 本地仓库与远程仓库关联

2.1 从零初始化新仓库

对于全新项目,初始化本地仓库并关联远程:

mkdir project_name && cd project_name git init touch README.md # 创建初始文件 git add README.md git commit -m "initial commit"

在Gitee创建新仓库(不要初始化README和.gitignore),然后关联远程:

git remote add origin git@gitee.com:yourname/project_name.git git push -u origin master

注意:Gitee默认分支现为main而非master,若遇到分支不匹配错误,可使用git branch -M main重命名本地分支后再推送。

2.2 关联已有本地仓库

对于已存在的本地仓库,只需添加远程地址:

cd existing_repo git remote add gitee git@gitee.com:yourname/repo_name.git

查看当前远程仓库配置:

git remote -v

若需要修改已存在的远程地址:

git remote set-url origin git@gitee.com:yourname/new_repo.git

3. 日常推送操作全流程

3.1 标准推送工作流

典型的代码修改推送流程如下:

# 1. 查看当前修改状态 git status # 2. 添加修改到暂存区 git add . # 添加所有修改 # 或 git add file1 file2 指定文件 # 3. 提交到本地仓库 git commit -m "描述性提交信息" # 4. 拉取远程最新变更(避免冲突) git pull --rebase origin master # 5. 推送到Gitee git push origin master

3.2 分支管理策略

推荐使用功能分支工作流:

# 创建并切换新分支 git checkout -b feature-branch # 开发完成后合并到主分支 git checkout master git merge feature-branch --no-ff # 保留合并记录 git push origin master # 删除已合并分支 git branch -d feature-branch

对于重要项目,建议在Gitee仓库设置中开启分支保护,禁止直接向master分支推送。

4. 常见问题排查与解决

4.1 推送被拒绝错误处理

当遇到[rejected] master -> master (non-fast-forward)错误时,说明远程有本地不包含的新提交。解决方法:

# 方法1:合并远程变更 git pull origin master # 解决可能出现的冲突后 git push origin master # 方法2:强制推送(慎用,会覆盖远程历史) git push -f origin master

重要:强制推送会重写历史记录,在团队协作项目中应避免使用,除非是私有分支。

4.2 SSH连接问题排查

若SSH连接失败,可按以下步骤排查:

  1. 检查SSH密钥是否加载:

    eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa
  2. 验证Gitee服务器连接:

    ssh -vT git@gitee.com
  3. 检查防火墙设置:

    sudo ufw status # Ubuntu sudo systemctl status firewalld # CentOS
  4. 测试代理设置(如有):

    unset http_proxy https_proxy

4.3 大文件推送失败处理

Gitee默认限制单个文件不超过100MB。如需管理大文件:

  1. 安装Git LFS:

    curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash sudo apt install git-lfs git lfs install
  2. 跟踪大文件类型:

    git lfs track "*.psd" git add .gitattributes
  3. 正常提交推送即可

5. 高级配置与优化技巧

5.1 Git配置优化

推荐添加以下配置提升使用体验:

# 颜色输出 git config --global color.ui auto # 别名设置 git config --global alias.co checkout git config --global alias.br branch git config --global alias.ci commit git config --global alias.st status # 自动纠正命令拼写 git config --global help.autocorrect 1 # 设置默认推送行为 git config --global push.default current

5.2 忽略文件配置

创建.gitignore文件排除不需要版本控制的文件:

# 编译生成文件 *.o *.so *.dll # 编辑器临时文件 .*.swp .idea/ .vscode/ # 系统文件 .DS_Store Thumbs.db # 日志和数据库文件 *.log *.sqlite

5.3 子模块管理

当项目依赖其他仓库时,可使用子模块:

# 添加子模块 git submodule add git@gitee.com:other/repo.git path/to/submodule # 克隆包含子模块的项目 git clone --recurse-submodules git@gitee.com:your/repo.git # 更新子模块 git submodule update --init --recursive

6. 自动化与持续集成

6.1 Git Hooks应用

利用客户端钩子自动化任务,例如提交前检查:

# 创建pre-commit钩子 vim .git/hooks/pre-commit

示例内容(检查Python语法):

#!/bin/sh flake8 . || exit 1

记得添加执行权限:chmod +x .git/hooks/pre-commit

6.2 Gitee Pages自动部署

利用Gitee Pages功能自动部署静态网站:

  1. 在仓库设置中开启Gitee Pages服务
  2. 确保网站文件在指定分支(如gh-pages)或目录(如docs)
  3. 每次推送后手动点击"更新"按钮(免费用户)或配置Webhook自动更新

6.3 CI/CD集成

Gitee提供基于GoCD的持续集成服务,配置步骤:

  1. 仓库根目录创建.gitee/.gitee-ci.yml文件
  2. 示例配置:
version: '1.0' stages: - build build: stage: build script: - echo "开始构建" - make build
  1. 提交后可在仓库的"流水线"标签查看执行结果

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询