Git基础
概述
workspace 工作区:本地电脑上看到的目录;
repository 本地仓库:就是工作区中隐藏的.git文件夹。
index 暂存区:在本地仓库中是.git文件夹,Git自动创建第一个master分支以及指向它的一个指针HEAD
remote 远程仓库:了解到的是gitlab等web端仓库。
图解命令:
git init
初始化一个git仓库
进入要变成仓库的文件夹
git add .
将文件夹中的文件添加到缓存区
git reset HEAD 文件夹
取消已缓存的内容
git commit -m “备注信息”
将被修改的文件暂存并提到的命令,并在命令行中提供提交注解
git checkout -<文件夹>
放弃未暂存文件的修改
git remote add origin 远程仓库地址
将当前本地仓库与远程仓库进行关联
git push -u origin master(本地仓库分支)
将本地仓库分支的代码推送到远程仓库中
git clone [远程仓库Url]
git clone -b [某分支] [远程仓库Url]
将远程仓库master分支克隆到当前目录
将远程仓库的某分支 克隆到当前目录
Git pull <远程主机名><远程分支名>:<本地分支名>
取回远程主机的远程分支并与本地分支合并
git fetch origin
从远程仓库抓取本地没有的数据,并且更新本地数据库。
fetch命令使用:
https://blog.csdn.net/qq_42780289/article/details/98049574
参考博客:
https://blog.csdn.net/u011535541/article/details/83379151
场景
本地修改未提交,拉取远程代码
暂存本地更改
git stash save "xxxx"
效果:
命令行输出Saved working directory and index state On businessMonitorV1: cat annotation
且提交部分没有显示要提交类;
拉取远程代码
git pull origin 远程分支名
// 拉取并合并
git fetch origin 远程分支名
效果:
From xxx 拉取分支的地址
* branch 分支名 -> FETCH_HEAD
git merge origin/远程分支名
效果:
显示更新 Updating 0cfc08b..effbcd2 Fast-forward
更新文件 xxx.java
3 files changed, 114 insertions(+)
// 更精细控制合并
恢复暂存的更改
git stash pop
效果:
显示 Auto-merging 更新文件
On branch 分支名
Your branch is up to date with 'origin/分支名'.
解决冲突
如果恢复的代码产生更改,需要手动解决冲突;
修改提交本地,远程已有新提交
Git+IDEA
常规操作案例博客:
https://cloud.tencent.com/developer/article/1516709
引入Git
1. 进入setting页面;
2. 配置本地git;
拉取仓库代码
具体的clone方式采用的是:
http克隆
通过Open Git Bash/GUI 实现代码拉取;
参考:https://blog.csdn.net/carfge/article/details/79691360