Git Command(待更新)

提交到版本库 (暂存区持久化)

git commit -m ""

查看文件内容区别

工作区 和 暂存区(版本库) 比较

git diff

从暂存区删除添加的文件

git rm --cached # 从暂存区转到工作区 commit的时候不包含这个文件

git restore --staged # 从暂存区转到工作区 commit这个文件的原版本

取消修改文件(未 add 状态) -- 回到暂存区(代码库)版本

git restore

查看当前分支的全部版本 从头走到当前节点

git log

git log --pretty=oneline # 一个版本显示在一行

回滚版本

git reset --hard ( HEAD^ | HEAD~ ) # 回滚一次

git reset --hard ( HEAD^^ | HEAD~~ ) # 回滚两次

git reset --hard ( HEAD | HEAD ) # 回滚n次

git reset --hard # 回滚特定版本号

查看 HEAD 路径

git reflog

复制代码
##### web

添加远程仓库

git remote add git@git.acwing.com:/.git # AcGit

git remote add git@github.com:/.git # GitGub

git remote add git@gitee.com:/.git # Gitee

git remote add git@<服务器ip>:/.git # 自己搭建的 git 云平台

git remote add git@gitcode.net:/.git # GitCode

git remote add git@gitlab.com:/.git # GitLab

git remote add git@bitbucket.org:/.git # Bitbucket

git remote add git@git.dev.tencent.com:/.git # Coding.net

git remote add git@sourceforge.net:/.git # SourceForge

git remote add git@ssh.dev.azure.com:v3/// # Azure DevOps

提交到云端 (第一次) -u 关联自动识别

git push -u <local_branch>:<remote_branch> # 可以直接指定

推送到云端指定文件夹

git push origin master:folder/subfolder

git clone 项目

git clone git@<服务器ip>:/.git

更改仓库 url

git remote set-url origin new_url

更改仓库名字

git remote rename <new_origin>

复制代码
##### branch



> 
> 共用暂存区
> 
> 
> 

创建分支

git branch

切换分支

git checkout

查看分支

git branch

合并分支最新节点到当前分支当前节点

git merge

快速合并 -- 改变引用

强制合并 -- -no-ff

删除本地分支

git branch -d

删除远程分支

git push <remote_name> --delete <branch_name>

本地分支对应云端分支 (云端分支存在,本地不存在) '--set-upstream-to=' = '-u'

git branch --set-upstream-to=/<remote_branch> <local_branch>

云端分支对应创建本地分支

git checkout --track /<remote_branch>

从云端拉取代码 并合并到当前分支

git pull <remote_branch>

更改本地分支名字

git branch -m <old_branch_name> <new_branch_name>

更改云端分支名字

将本地分支上传给云端某分支 && 将云端旧分支删除

fetch 和 pull

git pull = git fetch && git merge

git fetch # 从指定的远程仓库获取更新,并将它们下载到本地仓库中

如果不指定远程仓库,则默认使用名为 origin 的远程仓库

git fetch --all # 从所有远程仓库获取更新,并将它们下载到本地仓库中

git fetch --tags # 获取远程仓库的标签,并将它们下载到本地仓库中

git fetch --prune # 在获取远程更新时,删除本地已经不存在的远程分支

git fetch --dry-run # 模拟执行 git fetch 命令,显示将要下载的内容,但不会真正执行下载操作

复制代码
##### stash

将当前操作存入栈

git stash

查看栈里内容

git stash list

弹出第一个内容恢复到工作区(当前分支)

git stash pop # 删除栈顶

git stash apply # 不删除栈顶

删除栈顶元素(不恢复)

git stash drop

复制代码
#### 合并冲突

b1

branch1: vim

git add .

git commit -m "b1"

b2

branch2: vim

git add .

git commit -m "b2"

多个分支同时修改同一个文件 产生冲突

  • branch1: git merge branch2 'both modefied'

手动修改 处理冲突

复制代码
#### 多人修改冲突

共同开发分支

user1: push

user2: push --报错 --版本更改

解决冲突

先 pull 最新版本

再手动处理冲突

复制代码
#### 下载部分代码


##### 拉取代码


1. sparsecheckout

初始化仓库

git init

添加远程仓库

git remote add git@<服务器ip>:/.git

开启 sparse checkout 功能

git config core.sparsecheckout true

指定要获取的文件或文件夹路径

echo >> .git/info/sparse-checkout

拉取指定文件

git pull origin master

复制代码
2. checkout

指定仓库分支 拉取该路径文件夹或文件(可以多个文件名)

git checkout / -- path/to/file.txt

复制代码
##### 还原拉取

删除 sparse checkout 配置文件

相关推荐
huihui36137 分钟前
北京比较好的商会私域管理软件推荐:选型标准与核验要点
大数据
数智顾问1 小时前
(84页PPT)PWC海科集团生物医药业务5年发展战略项目建议书(附下载方式)
大数据·人工智能·物联网
Elastic 中国社区官方博客1 小时前
使用重新设计的 AutoOps 更快地进行 Elasticsearch 问题排查
大数据·运维·前端·人工智能·elasticsearch·搜索引擎·全文检索
2401_859506241 小时前
玉石鉴定的技术原理与实操方法:从证书验真到品质判断
大数据
涛思数据(TDengine)1 小时前
WAIC 现场直击|烽台科技与 TDengine 战略签约:工业数据+“AI“,答案是什么?
大数据·人工智能·ai·时序数据库·tdengine·国产数据库
RoboWizard1 小时前
金士顿高速闪存盘 单双接口适配多元存储需求
大数据·运维·人工智能·智能手机·云计算
聚焦前沿1 小时前
水动力优化导流罩:原理、数据与实船验证
大数据·服务器·数据库·人工智能
A15362551 小时前
零售POS系统怎么选?门店规模、连锁模式和即时零售需求是关键
大数据·人工智能·零售
我的温馨家园2 小时前
2026年无锡健康管理行业服务模式与细胞技术应用观察
大数据·人工智能·精选
phltxy2 小时前
LangGraph智能租房助手实践
大数据·人工智能·python·深度学习·语言模型·langchain