git工具笔记

Git 核心概念

Git 是一个分布式版本控制 系统,本质是代码的时光机。它通过以下机制实现高效管理:

  • 分支(Branch)
    每个分支像一条独立的时间线,允许在不影响主线的同时开发新功能。例如:git checkout -b feature 创建新分支。
  • 合并(Merge)
    将不同分支的修改整合到一起,例如 git merge featurefeature 分支代码合并到当前分支。若出现冲突,需手动解决。

关键区域与操作

  • 工作目录
    直接编辑文件的地方,通过 git add <file> 将修改标记为待提交。
  • 暂存区(Stage)
    临时存放准备提交的改动,git commit 将暂存区内容永久保存到历史记录。
  • 历史记录(History)
    所有提交的版本库,git log 查看提交哈希,git checkout <hash> 切换到任意版本。

常用操作流程

初始化与提交

bash 复制代码
git init                  # 初始化仓库  
git add README.md         # 追踪README.md文件  
git commit -m "文件说明"  # 提交到历史  

远程协作

bash 复制代码
git remote add origin <远程仓库地址>  # 关联远程仓库  
git push -u origin main             # 推送到远程  
git pull                           # 拉取他人更新  

分支管理

bash 复制代码
git branch -a            # 查看所有分支  
git checkout -b dev      # 创建并切换分支  
git merge dev            # 合并分支到当前分支  

忽略文件配置

创建 .gitignore 文件,列出需忽略的文件/目录:

复制代码
*.log  
/temp/  
node_modules/  

SSH 免密配置

  1. 生成密钥:ssh-keygen -t ed25519 -C "your_email@example.com"
  2. 复制公钥:cat ~/.ssh/id_ed25519.pub,粘贴到 Git 平台(如 GitHub)的 SSH 设置中。
  3. 验证:ssh -T git@github.com

冲突解决

当合并分支出现冲突时:

  1. 打开冲突文件,标记为 <<<<<<< HEAD>>>>>>> branch 的部分需手动修改。
  2. 保存后执行 git add <file>git commit 完成合并。

协作建议

  • 频繁拉取更新(git pull)避免冲突。
  • 提交前运行 git status 检查改动。
  • 使用 git diff 查看具体修改内容。

通过以上流程,Git 能高效管理代码版本,支持多人协作无冲突。

相关推荐
听说唐僧不吃肉9 小时前
解析ELK(filebeat+logstash+elasticsearch+kibana)日志系统原理以及k8s集群日志采集过程
elk·elasticsearch·kubernetes
在未来等你9 小时前
Elasticsearch面试精讲 Day 5:倒排索引原理与实现
elasticsearch·搜索引擎·面试·全文检索·lucene·分词·倒排索引
搬山境KL攻城狮9 小时前
Spring Data Elasticsearch 4.x支持通过SpEL表达式指定ES索引名
spring·elasticsearch
知彼解己9 小时前
Elasticsearch 深分页限制与解决方案
大数据·elasticsearch·jenkins
wdfk_prog9 小时前
[Linux]学习笔记系列 -- mm/slub.c SLUB内存分配器(The SLUB Allocator) 现代内核对象缓存的核心
java·linux·运维·c语言·笔记·学习·缓存
Elasticsearch9 小时前
转型 IT 服务台:Elastic 的 Search AI 平台如何强化 Salesforce Service Cloud
elasticsearch
mooyuan天天9 小时前
DVWA靶场通关笔记-SQL Injection Blind(SQL盲注 Impossible级别)
android·笔记·sql
g_i_a_o_giao9 小时前
Android8 从系统启动到用户见到第一个Activity的流程源码分析(三)
android·linux·笔记·学习·安卓framework开发·安卓源码分析
星星火柴9369 小时前
C++“类吸血鬼幸存者”游戏制作的要点学习
c++·笔记·学习·游戏