From 9f915401d1b964cbff8e5e2415c7fe2e8908cb5d Mon Sep 17 00:00:00 2001 From: sunweining <3010665280@qq.com> Date: Tue, 28 Oct 2025 18:52:07 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B9=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 10.27孙维宁学习笔记.txt | 45 -------------- 10.28孙维宁学习笔记.txt | 130 ----------------------------------------- 2 files changed, 175 deletions(-) delete mode 100644 10.27孙维宁学习笔记.txt delete mode 100644 10.28孙维宁学习笔记.txt diff --git a/10.27孙维宁学习笔记.txt b/10.27孙维宁学习笔记.txt deleted file mode 100644 index f7c57c5..0000000 --- a/10.27孙维宁学习笔记.txt +++ /dev/null @@ -1,45 +0,0 @@ - 第一天:配置后端环境+git学习部分(笔记+博客园git学习+GeekHour视频到第七个) -git:免费开源的分布式管理系统 使用仓库的数据库来记录文件的变化。 - -今天的内容: -一、理解了git工作区域: -工作区:你在本地编辑器里改动的代码,所见即所得,里面的内容都是最新的 -暂存区:通过 git add 指令,会将你工作区改动的代码提交到暂存区里 -本地仓库:通过 git commit 指令,会将暂存区变动的代码提交到本地仓库中,本地仓库位于你的电脑上 -远程仓库:远端用来托管代码的仓库,通过 git push 指令,会将本地仓库的代码推送到远程仓库中 - -二:安装git 去官网下载 然后控制台:git -v 可看到版本号,安装成功。 -官网下载安装git客户端管理工具SourceTree - -三、熟悉git常见命令 - -ls 查看文件列表 -cat .. 查看文件内容 - -# 配置用户名 -git config --global user.name "sunweining" -# 配置用户邮箱 -git config --global user.email "19560775839@163.com" -# 查看当前的配置信息 -git config --global --list -# 通过 alias 配置简写 -## 例如使用 git co 代替 git checkout -git config --global alias.co checkout - -git clone 远程仓库地址 :新建仓库 -ls -al 查看仓库 - -命令举例:工作区———— git add . -- 暂存区 -- git commit(提交本地仓库(暂存区)) -- 本地仓库 (工作区域流程) - -git push(提交到远程仓库) 会将本地仓库的内容推送到远程仓库 -git pull (拉取远程仓库并合并):会拉取远程仓库并合并到本地仓库,相当于执行 git fetch + git merge -git checkout:切换分支 用于切换分支及撤销工作区内容的修改 -git restore:取消缓存 用于将改动从暂存区退回工作区 -git reset:回滚代码 用于撤销各种 commit 操作,回滚代码 - -git status 查看当前仓库状态 -git log 查看提交记录 如果加上--online 就是简洁的 -echo "这是第一个文件" >file1.txt 现场创建文件成功 - -问题:目前我们的git账号还没有开,无法提交git到远程仓库,应该要等明天楼上的老师上班才能上传git学习笔记 - diff --git a/10.28孙维宁学习笔记.txt b/10.28孙维宁学习笔记.txt deleted file mode 100644 index cb44eb6..0000000 --- a/10.28孙维宁学习笔记.txt +++ /dev/null @@ -1,130 +0,0 @@ -第二天:git学习部分(笔记+博客园git学习+GeekHour视频第七个到最后) - -一、git常见指令补充 -(0)快速打开新的终端 -(1) git reset 回退版本 -三种模式: -git reset --soft 某一个版本 保留工作区和暂存区的所有内容 - -git reset --hard 某一个版本 丢弃工作区和暂存区的所有内容 - -git reset --mixed 某一个版本 保留工作区的所有内容,丢弃暂存区的内容 - -这里实验,分别提交三次,用git log --oneline查看提交历史(三次提交及版本号) -这时,使用cp -rf repo repo-soft可把仓库命令复制,同理hard和mixed三份 - -git ls-files 查看暂存区的内容 - -hard模式里,可以用git reset --hard HEAD~ 表示回退上一个版本 别的也可以 -mix模式回退后需要再add一下 soft不用 - -git reflog命令查看操作历史记录 - -(2)补充基本命令 --命令行指令ls, 列出目录(文件夹)下文件, ls for list --l, 以每行一个的格式列出文件, l for long --a, 列出包含隐藏文件的所有文件, a for all --S, 以文件大小顺序列出文件, S for Size --t, 以修改日期顺序列出文件, t for time modified --r, 以倒序列出文件,r for reverse -参数可以叠加,ls-ltr就是每行一条以文件修改日期倒序排列列出文件 --命令行指令mkdir, 新建目录(文件夹), Make Directory --命令行指令cd, 切换目录(文件夹), Change Directory -cd ~ 跳到自己的home目录(文件夹) -cd../.. 跳到目前目录的上上两层 - - - -(3)git diff 查看差异 (一般是用图形化工具) -<1>(工作区和暂存区之间差异) -使用vi修改文件后 git diff 文件名 -这里显示index 文件内容哈希值 权限值 -红色是删除内容 绿色是添加的内容 -<2>工作区与版本库之间 -git diff HEAD -<3>暂存区和版本库之间差异(commit 后为空) -git diff --cached -<4> git diff 版本号1 版本号2 比较两个版本差异内容 -git diff HEAD~ HEAD 上一个版本和最新版本 Head~2 head之间的第两个版本..... -可以后面加上文件名,只查看指定文件的差异 - -!!!!!!!!!!!!Head指向分支的最新提交节点,很重要!!!!!!!!!!!!!! -二、git rm 删除文件 --命令行指令rm 用于删除文件、目录, rm for remove --i 删除前提示, y删除, n不删除 --r 删除一个目录(含所有文件), r for repository -r*包括子目录 --f 强制执行删除操作, f for force -参数可叠加, 如rm -rf 【dir】,直接删除目录 - -rm file 删除后要add一下,把暂存区也删一下 -但是git rm 直接删掉工作区和暂存区的内容 -git rm --cached 只删除暂存区 - -三、.gitignore忽略文件 -自动生成 临时 机密... -echo "access.log" > access.log -echo access.log > .gitignore 添加到忽略文件 -*.log表示忽略全部日志,但是.gitignore创建,1.log已经在版本库中了,就不行 -temp/表示忽略temp文件夹 - -四、远程仓库管理代码 比如gitee,gitea,github,gitlab -这里提交笔记用的是gitea -git clone http:.. 将远程仓库克隆到本地仓库 - -添加远程仓库:git remote add <远程仓库别名><远程仓库地址> git push -u <远程仓库名><分支名> - -查看远程仓库: git remote -v - -git pull 把远程仓库的修改拉取到本地仓库,自动合并,如果不一致就冲突 //git fetch只获取远程仓库的修改 并不会合并 需要手动合并 -( git pull <远程仓库名><远程分支名>:<本地分支名> ) - -git push 把本地仓库的修改推送给远程仓库 - -四、GUI工具 -github-desktop SourceTree 小乌龟 GitKraken -vscode新建终端:ctrl+shift+` - -五、分支Branch!!!!! -(1)get branch 到默认的mian分支 -之后配合SourceTree使用,打开克隆过的/init过的本地文件夹 - -(2)创建:get branch dev创建新的分支dev - -(3)切换:get checkout dev切换到dev分支上 注意git checkout命令可恢复到我们修改之前的状态,避免歧义 -(4)git switch dev 更好用!!只切换分支 - -(5)合并:git merge合并分支 -git log --graph --oneline 查看分支图 - -(6)删除: -删已经合并的:git branch -d dev -删没有合并的:git branch -D dev - -(7)解决合并冲突: -冲突后,进入main或其中分支修改冲突文件,把冲突的杠等去掉,合并冲突内容 -添加暂存区 git add file -提交修改 git commit -m "message" -终止合并:get merge --abort - -六、回退和rebase -执行merge要在main分支上 -恢复分支:git checkout -b dev 提交id -定义指令别名:alias graph="git log --oneline --graph --decorate --all" -git rebase main 将当前的main分支并入到dev分支的后面。 - -merge:不破坏原分支,方便回溯和查看 产生额外费用. -Rebase:不会新增额外的提交记录,改变了branch out中的节点。避免在共享分支中使用。 - -七、工作流模型 -就是一些比较好的规范和流程,可以让我们的工作更高效,更有条理 -比如GitFlow工作流:包含了多个分支 主线:main 线上bug:hotfix 等等 - - - - - - - - - -