Git 在一个目录上添加分支?
Git add branch on one single directory?
我在 GitHub 上有一个 git 存储库,有 3 个不同的文件夹,只有 master 分支。我怎样才能在一个目录而不是所有三个目录上创建一个新分支?
- git checkout -b
- 本地删除另外两个目录
- git 推送
你不能。 Git 对整个存储库进行操作,而不是对单个目录进行操作。您可以:
- 创建一个新分支,并且在该分支上只修改目标目录中的内容。
- 你显然可以按照 william.eyidi 的建议删除其他目录,但是如果你想将更改合并回你的 master 分支,这会让事情变得困难。
- 您可以将特定目录设置为一个 git 子模块,它具有独立于父存储库的历史记录,但这可能比它的价值更复杂。
我猜你应该删除那个存储库然后再做一次,但这次是正确的分支。
您提到您有 3 个文件夹,但您只想版本化一个文件夹。因此,使用 git.
转到您的文件夹
这是 Git-Bash
中的示例
cd /path/to/your/folder
git init
git add --all
git commit -m "My first commit."
git push origin master
来源必须是 github-repository 地址。
创建新分支后,您可以添加跟踪该分支的目录,而不是签出整个存储库的分支,而其他目录跟踪另一个分支。
git worktree add masterBranchDirectory master
现在目录 masterBranchDirectory 是整个存储库的副本。进入此目录后,您将自动进入 master 分支。
您可以只为周围项目中的单个文件夹创建一个新存储库。
例如对于名为 App:
的项目
假设在您的 App 项目中,您希望 folder1 成为您的新 Repo。
您必须在 github 上创建一个新的 Repo。然后在你的本地 App 打开 git bash:
# create a Git Repository:
$ cd /folder1
$ git init -b main
$ git add . && git commit -m "initial commit"
# link local Repo with remote Repo:
$ git remote add origin <REMOTE_URL TO NEWLY CREATED REPO>
# Sets the new remote
$ git remote -v
# Verifies the new remote URL
# push your new Repo to Github:
$ git push origin main
然后
如果您的 App 项目是您的整个开发文件夹
folder1 是您的分发文件夹,构建文件位于
您总是可以克隆 folder1 的 回购以供展示之用
和 App Repo 用于开发目的。
此外,基本上您的单个文件夹在不同的存储库中有一个单独的分支。
但由于它在您的 App 中,所以没有任何区别。
选项 B:
还有git子模块的选项,如前文所述。
你可以从你的主要回购中获得 foler1 甚至 separatley(但不一定分开)并且只将它“嵌入”到你的 App.
https://git-scm.com/book/de/v2/Git-Tools-Submodule
How do I work with a git repository within another repository?
我在 GitHub 上有一个 git 存储库,有 3 个不同的文件夹,只有 master 分支。我怎样才能在一个目录而不是所有三个目录上创建一个新分支?
- git checkout -b
- 本地删除另外两个目录
- git 推送
你不能。 Git 对整个存储库进行操作,而不是对单个目录进行操作。您可以:
- 创建一个新分支,并且在该分支上只修改目标目录中的内容。
- 你显然可以按照 william.eyidi 的建议删除其他目录,但是如果你想将更改合并回你的 master 分支,这会让事情变得困难。
- 您可以将特定目录设置为一个 git 子模块,它具有独立于父存储库的历史记录,但这可能比它的价值更复杂。
我猜你应该删除那个存储库然后再做一次,但这次是正确的分支。
您提到您有 3 个文件夹,但您只想版本化一个文件夹。因此,使用 git.
转到您的文件夹这是 Git-Bash
中的示例cd /path/to/your/folder
git init
git add --all
git commit -m "My first commit."
git push origin master
来源必须是 github-repository 地址。
创建新分支后,您可以添加跟踪该分支的目录,而不是签出整个存储库的分支,而其他目录跟踪另一个分支。
git worktree add masterBranchDirectory master
现在目录 masterBranchDirectory 是整个存储库的副本。进入此目录后,您将自动进入 master 分支。
您可以只为周围项目中的单个文件夹创建一个新存储库。
例如对于名为 App:
的项目假设在您的 App 项目中,您希望 folder1 成为您的新 Repo。
您必须在 github 上创建一个新的 Repo。然后在你的本地 App 打开 git bash:
# create a Git Repository:
$ cd /folder1
$ git init -b main
$ git add . && git commit -m "initial commit"
# link local Repo with remote Repo:
$ git remote add origin <REMOTE_URL TO NEWLY CREATED REPO>
# Sets the new remote
$ git remote -v
# Verifies the new remote URL
# push your new Repo to Github:
$ git push origin main
然后
如果您的 App 项目是您的整个开发文件夹
folder1 是您的分发文件夹,构建文件位于
您总是可以克隆 folder1 的 回购以供展示之用
和 App Repo 用于开发目的。
此外,基本上您的单个文件夹在不同的存储库中有一个单独的分支。 但由于它在您的 App 中,所以没有任何区别。
选项 B:
还有git子模块的选项,如前文所述。
你可以从你的主要回购中获得 foler1 甚至 separatley(但不一定分开)并且只将它“嵌入”到你的 App.
https://git-scm.com/book/de/v2/Git-Tools-Submodule
How do I work with a git repository within another repository?