Git仓库(git仓库有哪些)
liuian 2025-05-08 02:49 67 浏览
# Git仓库使用方法流程详解
## 一、环境搭建与基础配置
### 1.1 安装与初始化
- **安装Git**:官网下载安装包,默认配置安装
- **配置全局信息**:
```bash
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
o 验证安装:git --version
1.2 创建本地仓库
o 初始化仓库:git init
o 克隆远程仓库:git clone <仓库URL>
1.3 忽略文件配置
o 创建.gitignore:写入需忽略的文件/目录
o 应用规则:自动跳过匹配文件
二、核心工作流程
2.1 文件状态管理
o 查看状态:git status
o 添加文件到暂存区:git add <文件名>或git add .
o 提交到本地仓库:
【bash】
git commit -m "提交说明"
2.2 版本回溯与重置
o 查看提交历史:
【bash】
git log --oneline --graph
git reflog
o 回退版本:
o 软重置:git reset --soft <提交哈希>
o 硬重置:git reset --hard <提交哈希>
o 撤销未提交的修改:
【bash】
git checkout -- <文件名>
git reset HEAD <文件名>
2.3 远程仓库协作
o 添加远程仓库:git remote add origin <远程仓库URL>
o 推送代码:
【bash】
git push -u origin main
git push
o 拉取最新代码:
【bash】
git pull origin main
git fetch origin
2.4 分支管理
o 创建与切换分支:
【bash】
git branch feature/login
git checkout feature/login
git checkout -b feature/login
o 合并分支:
【bash】
git checkout main
git merge feature/login
o 删除分支:
【bash】
git branch -d feature/login
git branch -D feature/login
o 推送分支到远程:
【bash】
git push -u origin feature/login
git push origin feature/login
2.5 标签管理
o 创建标签:
【bash】
git tag v1.0.0
git tag -a v1.0.0 -m "发布版本"
o 查看标签:
【bash】
git tag
git show v1.0.0
o 推送标签到远程:
【bash】
git push origin v1.0.0
git push origin --tags
o 删除标签:
【bash】
git tag -d v1.0.0
git push origin :refs/tags/v1.0.0
三、高级协作场景
3.1 多仓库管理
o 添加多个远程仓库:
【bash】
git remote add upstream <原始仓库URL>
git remote add fork <个人仓库URL>
o 同步上游仓库更新:
【bash】
git fetch upstream
git checkout main
git merge upstream/main
git push origin main
3.2 冲突解决策略
o 手动解决冲突:
1. 编辑冲突文件,保留需保留内容
2. 删除冲突标记后保存文件
3. 执行git add <文件名>
4. 提交合并结果:git commit -m "解决合并冲突"
o 使用合并工具:
【bash】
git config --global merge.tool vscode
git mergetool
3.3 代码审查与协作
o 创建Pull Request(PR):
1. 推送特性分支到远程仓库
2. 在平台发起PR,填写变更说明和关联Issue
3. 团队成员进行代码审查和讨论
o 处理PR反馈:
o 根据反馈修改代码后,提交到特性分支
o 远程仓库自动更新PR内容
3.4 持续集成集成
o 配置Git Hooks:
【bash】
#!/bin/sh
if ! python -m black --check .; then
echo "代码风格不符合规范,请使用black格式化后再提交"
exit 1
fi
o 与CI/CD工具集成:
【yaml】
name: CI
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: pip install -r requirements.txt
- run: pytest
四、最佳实践与常见问题
4.1 最佳实践
o 提交粒度控制:每个提交聚焦单一逻辑单元
o 分支命名规范:
o feature/xxx:特性开发分支
o bugfix/xxx:Bug修复分支
o release/v1.0:发布分支
o hotfix/xxx:紧急修复分支
o 代码审查流程:强制要求PR需至少
相关推荐
- c5game开箱网(c5game开箱网是正规的吗)
-
苹果c5game开箱操作很简单,首先进入c5game网站,选择打开自己的背包,然后找到自己想要开箱的物品,点击开箱按钮即可。在开箱过程中,会弹出一个开箱界面,按照界面提示进行操作,等待开箱过程结束即可...
- ps5官网(playstation 官网)
-
在官网买ps5需要玩家收到预购邀请才可以。索尼决定遴选出一批忠实玩家,率先向其提供PS5实机预定服务,数量有限,先到先得。玩家只需在PlayStation.com网站完成注册手续。若有幸等到预购邀请电...
- 电脑上dat文件用什么打开(电脑上dat文件怎么打开)
-
、打开电脑,找到“我的电脑”然后再打开硬盘C就可以看到相应的dat文件。2、硬盘C里面可以找到很多的dat文件,只是他们的文件拓展名不一样。3、然后在我的电脑当中输入“dat”就会弹出许多与dat相关...
- win10 2004和1909哪个好用(win10版本1909好用还是2004好用)
-
可以下载升级包进行升级。
- 主题商店oppo免费下载(oppo主题商店7.0.0下载)
-
如果在oppo手机上面下载主题上练的话,我建议还是不要下载,因为手机上自带有主题商店,然后可以在自带的主题商店里面就能下载使用自己的主题,再一个就是我们下载的主题商店,也会占手机内存,也可以导致手机内...
- win10系统 pe(win10系统 PID 1716)
-
E10都是表示系统缺水,给壁挂炉充上水压补足1.2bar即可解决。用户在使用前,首先应检查锅炉的水压表指针是否在规定范围内,说明书中规定的标准水压为1-1.2bar。但在实际使用过程中,由于暖气系统和...
- 电信官网登录入口(中国电信官网登录入口)
-
中国电信天翼网关一般情况下,登陆地址是http://192.168.0.1,用提供的用户名和密码就可以登陆。电信智能网关登录的方法就是要看电信光纤猫上背面的标签上的登录管理页面的网址以及登录的用户名和...
- 比迅雷好用的下载工具(比迅雷好用的下载app)
-
迅雷是一款中国大陆的著名下载工具,但由于其限速和广告等问题,许多用户可能会寻求更良心、更干净的替代品。以下是一些建议的下载工具:1.IDM(InternetDownloadManager):这是...
- 惠普笔记本换屏幕一般多少钱
-
看你在哪换,官方500以上,淘宝买个屏幕自己换300-600质量不同换新的吧没必要了原配屏看型号有的还不好配电子产品放了2年多一潮气性能下降运行速度明显不行二现在新的I57代...
- 笔记本电脑硬盘多少钱一个(4t机械硬盘多少钱)
-
这要看多大的容量的,是不是好拆。如果换120gsata接口的固态,选便宜的影驰这样的品牌的。换好装好系统。360左右的价格吧。我自己换的,我把原先的硬盘位换成固态硬盘,把光驱位通过硬盘托把笔记本的硬盘...
- 惠普电脑专卖店地址(惠普电脑型号查询官网)
-
京东的惠普的授权旗舰店和京东自营旗舰店比较靠谱不论是惠普的授权旗舰店,还是京东自营旗舰店,他们卖的产品都是靠谱的,不会存在故意坑你的情况,但是相比之下,京东自营的服务更有优势:京东自营,走的是京东物流...
-
- 电脑黑屏如何解决方法(电脑黑屏如何解决方法图片)
-
查看是否是由于显示器自身的原因而不能正常工作造成的黑屏,将显示屏的插头先拆下来,进行一次清理,然后再重新连接。如果还是不行,可以试一下其他的接口或者显示屏,看看是不是显示屏或者是接口的问题。如果显卡没有信号送出或有信号送不出去时,这时显示器...
-
2025-12-24 15:55 liuian
- 一周热门
- 最近发表
- 标签列表
-
- python判断字典是否为空 (50)
- crontab每周一执行 (48)
- aes和des区别 (43)
- bash脚本和shell脚本的区别 (35)
- canvas库 (33)
- dataframe筛选满足条件的行 (35)
- gitlab日志 (33)
- lua xpcall (36)
- blob转json (33)
- python判断是否在列表中 (34)
- python html转pdf (36)
- 安装指定版本npm (37)
- idea搜索jar包内容 (33)
- css鼠标悬停出现隐藏的文字 (34)
- linux nacos启动命令 (33)
- gitlab 日志 (36)
- adb pull (37)
- python判断元素在不在列表里 (34)
- python 字典删除元素 (34)
- vscode切换git分支 (35)
- python bytes转16进制 (35)
- grep前后几行 (34)
- hashmap转list (35)
- c++ 字符串查找 (35)
- mysql刷新权限 (34)
