git使用记录

git使用记录

00、区域说明

  • 工作区(Working Directory)– 你的电脑
  • 暂存区(Staging Area 或 Index)
  • 存储区(Repository 或 Commit History)
  • Stash区(存放区)

工作【git add】-> 暂存区【git commit】-> 存储区

工作区【git stash】->Stash区

git status 命令查看暂存区的状态

01、版本操作

移除已提交的文件的版本控制

1
git rm --cached temp.txt

使用 --cached 参数告诉Git你想要移除该文件的跟踪状态,但不会删除工作目录中的文件。

查看分支变更历史

1
git reflog

02、commit操作

修改已经commit的信息

1
git commit --amend -m "新的提交信息"

03、Stash操作

取出最近的stash记录

1
git stash apply --index stash@{0}

解决stash取出失败,记录丢失问题

1
2
3
4
5
6
7
8
git stash pop

Dropped refs/stash@{0} (0923fff2167d87be7b8397cba55fa54cba6362c9)

# 此时git stash list 找不到0923fff

# 但是apply还能被应用
git stash apply 0923fff2167d87be7b8397cba55fa54cba6362c9
1
2
3
4
5
6
7
8
9
// 假设忘记pop的哈希值

// 发生丢失前,commit过一次,查找悬挂的 commoit 信息
git fsck --full | grep 'dangling commit'


// 添加-p查看文件详细
git stash show -p 0923fff2167d87be7b8397cba55fa54cba6362c9

04、获取分支

仅获取指定分支

1
git clone -b develop --single-branch  

-b develop 指定分支develop

–single-branch 只拉取指定的分支

05、变更远程

仓库迁移(保留commit)

1
2
3
4
5
6
7
git remote -v

git remote remove origin

git remote add origin https:xxxx.git

git push -u origin develop

仓库迁移(无commit)

1
2
3
4
5
6
7
8
9
10
11
12
13
git checkout dev

git checkout --orphan develop

git remote remove origin

git remote add origin http://

git add .

git commit -m "init"

git push -u origin develop

–orphan 在当前分支创建无log的分支

06、补充概述

在 Git 中,工作区(Working Directory)、暂存区(Staging Area 或 Index)和存储区(Repository 或 Commit History)是三个不同的区域,它们分别扮演着不同的角色。理解这三个区域对于有效使用 Git 至关重要。以下是它们的概念和作用:

  1. 工作区(Working Directory)

工作区是你当前正在工作的项目目录。它包含所有的项目文件和文件夹。你在这里进行文件的修改、添加或删除等操作。

  1. 暂存区(Staging Area 或 Index)

暂存区是一个临时区域,用于记录你打算在下次提交时包含的更改。它充当了工作区和版本库之间的缓冲区。在你进行 git add 操作时,修改的文件就会被添加到暂存区中。你可以通过 git status 命令查看暂存区的状态。

  1. 存储区(Repository 或 Commit History)

存储区是一个保存项目历史记录的区域,包含所有已提交的快照。当你执行 git commit 命令时,暂存区中的更改会被保存到存储区中,形成一个新的提交记录。

4. Stash 区(存放区)

Stash 区是一个特殊的区域,用于临时保存当前工作目录和暂存区的更改。它让你可以在不提交当前工作状态的情况下,切换分支或进行其他操作。使用 git stash 命令可以将当前的更改保存到一个栈中,并恢复到最近一次提交的状态。