Git的使用技巧 - 教程

news/2025/10/6 20:21:13/文章来源:https://www.cnblogs.com/yxysuanfa/p/19127882

以下是关于 Git 的使用方法论述,涵盖 Git 基础操作以及访问代码托管平台 Gitee 和 GitHub 的流程:

一、Git 基础概念与安装

1. Git 是什么?
  • 分布式版本控制系统:用于追踪文件变更,支持多人协作开发,解决代码冲突,记录版本历史。

  • 核心功能:分支管理、版本回滚、合并代码、远程仓库同步等。

2. 安装 Git

二、Git 核心操作流程

1. 初始化本地仓库
# 在项目目录中初始化 Git 仓库
git init
2. 配置用户信息(全局/本地)
# 全局配置(适用于所有仓库)
git config --global user.name "YourName"git config --global user.email "your_email@example.com"
​
# 本地仓库配置(仅当前仓库生效,优先级高于全局)
git config user.name "LocalName"git config user.email "local_email@example.com"
3. 基本操作命令
命令说明
git status查看文件状态(未跟踪/已修改/暂存等)
git add <文件路径>将文件添加到暂存区(支持 git add . 提交所有变更)
git commit -m "提交说明"将暂存区文件提交到本地仓库
git log查看提交历史(--oneline 简化显示,-p 查看变更详情)
git reset --hard <commit-id>回滚到指定版本(谨慎使用,会丢失后续变更)
git diff查看未暂存的文件变更
git diff --staged查看已暂存的文件变更
4. 分支管理
# 查看所有分支(当前分支前有 * 标识)git branch​# 创建新分支并切换(等价于 `git branch ` + `git checkout `)git checkout -b new-branch​# 切换分支git checkout existing-branch​# 合并分支到当前分支(需先切换到目标分支)git merge source-branch​# 删除分支(`-D` 强制删除未合并的分支)git branch -d target-branch

三、访问代码托管平台:Gitee 和 GitHub

代码托管平台用于存储远程仓库,实现团队协作和代码共享。以下是 Git 与两大平台的交互流程。

A. Gitee(码云)使用指南

1. 注册与创建仓库

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

3. 克隆远程仓库到本地

# HTTPS 克隆
git clone https://gitee.com/your-username/your-repo.git
​
# SSH 克隆
git clone git@gitee.com:your-username/your-repo.git

4. 拉取与推送更新

# 拉取远程仓库最新代码(自动合并)
git pull origin main
# 推送本地变更到远程仓库
git push origin main
B. GitHub 使用指南

1. 注册与创建仓库

  • 访问 GitHub 官网 注册账号,点击 New repository,填写仓库信息(建议勾选初始化 README 文件)。

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

  • HTTPS 方式

    git remote add origin https://github.com/your-username/your-repo.gitgit push -u origin main

  • SSH 方式

    1. 生成 SSH 密钥(同 Gitee 步骤)。

    2. 登录 GitHub,进入 Settings -> SSH and GPG keys,添加公钥。

    3. 关联远程仓库:

      git remote add origin git@github.com:your-username/your-repo.gitgit push -u origin main

3. 克隆远程仓库

# HTTPS 克隆git clone https://github.com/your-username/your-repo.git # SSH 克隆git clone git@github.com:your-username/your-repo.git

4. 协作开发:Fork 与 Pull Request(PR)

  • Fork 仓库:在目标仓库页面点击 Fork,将仓库复制到自己的账号下。

  • 克隆 Fork 后的仓库

    git clone git@github.com:your-username/forked-repo.git

  • 修改代码并提交:在本地分支开发后,推送至自己的远程仓库。

  • 创建 PR:返回原仓库页面,点击 New Pull Request,选择源分支(自己的分支)和目标分支(原仓库主分支),描述变更后提交,等待管理员审核合并。

四、常见问题与最佳实践

1. 代码冲突解决
  • 当合并分支或拉取代码时出现冲突,Git 会标记冲突区域(<<<<<<<>>>>>>>),需手动修改文件,删除冲突标记,保留正确代码,然后重新提交。

    # 修改冲突文件后,添加暂存并提交git add conflict-file.txtgit commit -m "解决冲突"

2. 版本回滚策略
  • git revert <commit-id>:生成一个新提交来撤销指定版本的变更,适合公共分支(避免强制回滚影响他人)。

  • git reset --hard <commit-id>:强制回滚到指定版本,仅用于本地分支或未推送的变更。

3. 分支管理最佳实践
  • 主分支(main/master)保持稳定,仅用于发布版本。

  • 开发新功能时创建独立分支(如 feature/new-login),避免直接在主分支修改。

  • 定期将主分支合并到开发分支,保持代码同步。

4. 凭证管理(HTTPS 方式)
  • Windows 用户可安装 Git Credential Manager,自动存储账号密码。

  • macOS/Linux 用户可配置 Git 凭证缓存:

    git config --global credential.helper cache

五、总结

Git 是现代软件开发中不可或缺的工具,其核心逻辑围绕 本地仓库远程仓库 的交互展开。通过 addcommitpush 流程管理本地变更,通过分支隔离不同开发任务,结合 Gitee/GitHub 实现高效协作。建议初学者多练习分支操作和冲突解决,逐步掌握版本控制的精髓。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/929666.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

251006

目录JT-JY7T2S1-1JT-JY6T2S1-2FT-(TED&VOAs) JT-JY7T2S1-1Hello, Motor insurance departemnt. Oh, hello, id like to ask about insurace for my car. Yeah, of course, i was just take a few detailes, whats …

2025国庆Day5

模拟赛 T1 枚举b3 n^2 处理出a_b1^a_b2=x的所有情况(满足b2<i) 然后枚举b4,计算答案 #include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> #include<cmath> #…

网站建设项目功能需求分析报告wordpress克隆菜单

第一题&#xff1a;打酱油 小明带着 N 元钱去买酱油。 酱油 10 块钱一瓶&#xff0c;商家进行促销&#xff0c;每买 3 瓶送 1 瓶&#xff0c;或者每买 5 瓶送 2 瓶。 请问小明最多可以得到多少瓶酱油。 输入格式 输入的第一行包含一个整数 N&#xff0c;表示小明可用于买酱油的…

南宁京象建站公司江苏威达建设有限公司网站

一&#xff0c;iOS覆盖率报告生成逻辑 iOS覆盖率报告生成与Android有很大的不同&#xff0c;主要的生成逻辑如下&#xff1a; 1&#xff0c;将profraw文件&#xff0c;通过命令xcrun llvm-profdata merge -sparse转换成profdata; 2&#xff0c;再将profdata文件&#xff0c;通…

字节跳动开源图标库:2000+图标一键换肤的魔法 - 教程

字节跳动开源图标库:2000+图标一键换肤的魔法 - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas&qu…

Photoshop启用钢笔绘制图形

Photoshop启用钢笔绘制图形pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", …

代码随想录打卡|Day51 图论(dijkstra(堆优化版)精讲、Bellman_ford 算法精讲) - 教程

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

自动化数据操作平台获3000万美元融资

自动化数据操作平台Pantomath获得3000万美元B轮融资,该平台利用AI技术扩展传统数据可观测性功能,通过自主AI代理实现事件自修复,帮助企业减少数据停机时间并提升数据可靠性。自动化数据操作平台Pantomath获3000万美…

常见排序算法详解与C语言实现 - 详解

常见排序算法详解与C语言实现 - 详解2025-10-06 20:00 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !im…

网站开发专业介绍pc开奖网站开发

已在内核代码中添加EmbedSky_hello驱动为例&#xff0c;进行内核编译时候出现了一下几个问题&#xff1a;1、在 /opt/EmbedSky/linux 2.6.30.4/drivers/char目录下修改“Kconfig”文件&#xff0c;添加如下内容&#xff1a;config EmbedSky_HELLOtristate "TQ2440/SKY2440…

南宁网站建设长春网站配图尺寸

在当今数字化金融时代&#xff0c;股票接口成为连接量化交易策略与金融市场的桥梁&#xff0c;为投资者提供了高效、准确的数据获取和交易执行功能。 一、股票接口的基本原理&#xff1a; 股票接口是量化交易系统的核心组成部分&#xff0c;它负责连接投资者的交易程序与金融市…

深入解析:43. 远程分布式测试实现

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

实用指南:【相机基础知识与物体检测】更新中

实用指南:【相机基础知识与物体检测】更新中pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", &qu…

外贸网站推广方法南昌百度关键词搜索

Windows 网络质量测试 References 保证网络稳定性&#xff0c;建议最大数据包延迟 200ms 以内&#xff0c;数据包最大和最小延迟差 100ms 以内&#xff0c;丢包率最好不丢包或 5% 以内。 ping www.baidu.com -t 调出 运行 (快捷键 Win R)&#xff0c;输入 cmd&#xff0c;pi…

网站用cms如何制作网址内容

SharePoint 2013 单一服务器场环境恢复数据库内容 笑男的公司服务很多客户&#xff0c;当然&#xff0c;这些客户都很挑剔&#xff0c;所以一般情况下生产&#xff08;Prod&#xff09;环境的服务是不能停的。 当然&#xff0c;如果你将包含相同网站集的数据库连接到同一个服务…

文化类网站建设福州seo推广外包

网上很多代码都略显繁琐&#xff0c;看了一下yy dalao的代码感觉很好&#xff0c;但他懒得打题解&#xff08;好吧我也是 以0为根节点的话&#xff0c;我把yy的一段代码删了改用fail[c]x0?0:ch[fail[x]][i];来实现特判&#xff0c;效果还不错&#xff01;也算是AC自动机的模版…

广州网站建设推广网站建设及推广开发

根据html&#xff1a;可知div是块级标签&#xff0c;span是行级标签 这里view类似于div&#xff0c;text类似于span&#xff0c;即 块级标签&#xff1a;view 行级标签&#xff1a;text、icon 类似效果 两个icon图标&#xff0c;置于第一排 两个view&#xff0c;分别位于第…

在上海哪个网站比较好自己在家可以做网站吗

在使用web-view时发现了一个问题总是会过段时间自己跳转到web-view是src地址 由于我是写的轮播图中嵌套一个web-view 所以当时我以为是轮播图和这个web-view冲突了 其实设计就是如此 自己跳 <view class"page-body"><web-view src"{{url}}">&…

AtCoder Beginner Contest 422 游记(VP)

很快过 $3t$,D 题稍微卡顿,E 题一堆垃圾错误。省流 很快过 \(3t\),D 题稍微卡顿,E 题一堆垃圾错误。10.6 内含剧透,请vp后再来。 不是题解!!!!!!! 赛前 本来在补 \(2023CCPCHarbin\) 的题目,做到最小生成…

详细介绍:无人机光纤FC接口模块技术分析

详细介绍:无人机光纤FC接口模块技术分析pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "M…