gpt4 book ai didi

linux - Git 分支和 ls

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:41:50 25 4
gpt4 key购买 nike

我不确定在这里问这个问题是否合适,如果不合适请重定向我。

我是 git 的新手,在学习它的过程中我偶然发现了这个。git branch branchName 和 'ls' 如何协同工作。例如:如果我有一个 master 和 test 分支,并且 test 分支与 master 分支相比有一个额外的 testFile 。现在,在 master 分支中,如果我 ls,我将看不到 testFile,但在切换到测试分支和 ls 后,我会看到 testFile

kiran@kiran-desktop:/media/kiran/Linux_Server/dev$ git branch
master
* test
kiran@kiran-desktop:/media/kiran/Linux_Server/dev$ git checkout master
M editor/editor_parts/syntax/operator_syntax.js
Switched to branch 'master'
kiran@kiran-desktop:/media/kiran/Linux_Server/dev$ ls
cgi-bin index.php misc underConstruction
editor jquery-1.5.2.min.js php.php userManage
fileManage jquery-ui-1.8.11.custom.css projectManage userPages
images login test.php
kiran@kiran-desktop:/media/kiran/Linux_Server/dev$ git checkout test
M editor/editor_parts/syntax/operator_syntax.js
Switched to branch 'test'
kiran@kiran-desktop:/media/kiran/Linux_Server/dev$ ls
cgi-bin index.php misc test.php
editor jquery-1.5.2.min.js php.php underConstruction
fileManage jquery-ui-1.8.11.custom.css projectManage userManage
images login testFile.txt userPages
kiran@kiran-desktop:/media/kiran/Linux_Server/dev$

但是两个分支的 pwd 显示相同的位置。

那么,切换分支如何改变 ls 的输出(据我所知,这是 linux 的一个功能)?

最佳答案

git checkout 将您从一个分支切换到另一个分支。为此,它将已 checkout 存储库中的文件替换为分支中的文件。

您的存储库实际上是 .git 子目录。

如果你执行 ls -a,你会看到它:

% ls -a -1
.git
.gitignore
...

跟踪的文件存储在那里。您通常只会看到当前 checkout 的分支。当你 check out 一个不同的分支时,git 从 .git 抓取文件,你可以使用 ls 查看它们。

查看此问题的答案以获取有关如何 git 工作的更多信息:Where can I find a tutorial on Git's internals?

关于linux - Git 分支和 ls,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7105897/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com