Git分布式版本控制工具

一、获取本地仓库

(1)创建一个新的目录

(2)右键点击Git bash 输入git init

(3)输入ll就可以看到所有的目录,包括刚刚创建的

二、基础操作指令

git init 初始化仓库

git add 工作区 ----》 暂存区 git add . 表示把当前目录下的修改都加入暂存区

git commit 暂存区 ---》本地仓库 git commit -m"注释内容"

git log 查看提交日志

git logoption --all 显示所有分支 --pretty=online 将提交信息显示为一行 --abbrev-commit 使得输出的commitid更简短 --graph 以图的形式显示

创建一个新的文件file.txt,然后git status查看他的状态发现是Untracked,这时候在工作区,然后用git add . 命令到暂存区,然后再用 git commit -m"commit file"提交到仓库。可以用git log查看历史。

git reset --hard commitID 版本回退\版本切换

git refolg 显示之前所有的操作,这样可以看到所有操作的ID

三、Git分支指令

git branch 查看分支

git branch 分支名称 创建分支

git checkout 切换分支,HEAD 指向谁谁就是当前的分支

git checkout -b 分支名 创建分支并切换到这个分支

git merge 合并分支 把某个分支合并到目标分支上,先切换到目标分支

git branch -d 删除分支

当两个分支上的修改可能会存在冲突,例如同时修改了同一个文件的同一行,这时就需要手动解决冲突,解决冲突步骤如下:处理冲突的地方,然后add,然后commit

删除整个本地Git仓库

  1. 首先,打开终端或命令提示符,进入你的本地Git仓库所在的目录。

  2. 输入命令:rm -rf .git。这个命令会删除.git目录及其下所有的内容,从而清除本地Git仓库的所有记录。请务必谨慎操作,因为这个命令不可逆。

第二种方法是删除项目目录里面的.git文件

四、开发中分支使用原则与流程

master:生产分支

线上分支,中小规模项目作为线上运行的应用对应的分支;

develop:开发分支

是从master分支创建的分支,一般作为开发部门的主要开发分支,阶段开发完成之后,需要合并到master分支上

feature/xxxx分支:

从develop创建的分支,一般是同期并发开发,但不同期上线时创建的分支,分支上的研发任务完成后合并到develop分支

hotfix分支:

从master派生的分支,一般作为线上bug修复使用,完成后需要合并到master、develop、test分支(用于代码测试)

五、Git远程仓库

Github 面向开源及私有软件项目的托管平台,只支持Git。

码云(https://gitee.com/): 国内的代码托管平台

基本操作指令

(1)添加远程仓库

git remote add 远端名称 仓库路径 例如git remote add origin https://gitee.com/kristinfy/git_test.git

(2)查看远程仓库

git remote

git remote -v

(3)推送到远程仓库

git push -f --set-upstream 远端名称本地分支名:远端分支名

如果远程分支名和本地分支名一样,可以只写本地分支名:git push origin master

git push origin master:master

-f :强制覆盖

--set-upstream : 推送到远端的同时并且建立起和远端分支的关联关系

git push :如果当前分支和远程分支已经关联,则可以省略分支名和远端名

git branch -vv :看远程分支和本地分支的对应关系

(4)克隆远程仓库

git clone 仓库路径 本地目录:本地目录可以省略,会自动生成一个目录

(5)从远程仓库抓取和拉取

抓取命令:git fetch 远端名字分支名字

就是将仓库里面的更新都抓取到本地,不会合并

如果不指定远端名称和分支名则抓取所有分支

拉取命令:git pull远端名字分支名字

拉取指令就是将远端仓库的修改拉倒本地并自动进行合并,等同于fetch+merge

如果不指定远端名和分支名则拉取所有并更新当前分支

相关推荐
Patrick_Wilson1 天前
Git Worktree 原理详解:从 objects / refs 看懂多分支并行与多 Agent 协作
git·面试·ai编程
yaoxiaoganggang1 天前
克隆 Superpowers 的规则库到你的本地(或者直接作为 Git Submodule)
人工智能·经验分享·git·ai编程
Python私教1 天前
用 Claude Code 做大型重构不翻车:分批+Git 兜底+验证闭环的实战流程(2026)
git·重构·ai编程·代码重构·工程实践·claude code
Shawn Dev1 天前
团队协作中的 Git Tag 最佳实践:从入门到精通
大数据·git·elasticsearch
独隅1 天前
Git/GitHub/GitLab/Gitee 核心对比指南
git·gitlab·github
佛山个人技术开发1 天前
GitCode个人技术开发者总结完整使用指南
windows·git·svn·github·gitcode
江华森1 天前
基于 Git 的自动集成交付(Git-Driven CI/CD)实战
git·ci/cd
Dontla1 天前
.gitkeep文件作用(让Git追踪空目录,使该目录能被纳入版本控制)!.gitkeep
大数据·git·elasticsearch
shandianchengzi1 天前
【记录】VSCode|Windows 下 VS Code 配置 Git Bash 为默认终端完整教程
windows·git·vscode·bash
EleganceJiaBao1 天前
【Git】现代开发工作流(Main + Feature Branch)
git·github