Git

Git常用操作

丢弃工作区修改

1
git checkout -- file_name

撤销暂存区的修改

1
git reset HEAD file_name

版本回退

1
2
git reset --hard HEAD^  #退回上一版本
git reset --hard [commit id]    #退回到[commit id]版本

查看提交历史

1
git log

查看命令历史

1
git reflog

删除文件

1
rm -rf foo.txt

此时

1
git status

会提示删除了文件,有两种情况,一种是确实要删除文件,则

1
git rm foo.txt

即可。另一种是删错了,则

1
git checkout -- foo.txt

git checkout其实就是用版本库里的版本替换工作 区的版本。

远程仓库

创建SSH-Key

1
ssh-keygen -t rsa -C "your email@example.com"

添加SSH-Key

添加远程仓库

1
2
git remote add origin git@github.com:alfredxinglkey/learngit.git        //添加后远程库的名字就是origin,这是git默认的叫法
git remote add origin https://github.com/alfredxinglkey/learngit.git        //https除了速度慢,还有每次都需要输入口令

推送(push)

1
git push -u origin master       //第一次推送需要加-u参数

克隆(clone)

1
git clone git@githuc.com:alfredxinglkey/learngit.git

分支管理

创建分支

1
2
3
git branch dev      //创建分支dev
git checkout -b dev     //创建dev分支并切换到dev分支
git branch      //列出所有分支

切换分支

1
git checkout master     //切换到master分支

合并分支

1
git merge dev       //合并dev分支到master分支

删除分支

1
git branch -d dev       //删除dev分支

解决冲突

手动修改冲突文件后重新提交,然后再次合并。

分支管理策略

Fast forward模式下,删除分之后,会丢掉分钟自信息,需要手动强制禁用Fast forward模式,Git就会在merge时生成一个新的commit,这样。从分支历史上就可以看出分钟自信息。

1
git merge --no-ff -m "merge with no-ff" dev     //禁用fast-forward模式

 

posted @   OneNX  阅读(300)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示