标签: branch

GIT 合并 master 到一个分支

我一直在一个新分支上开发一个新功能,同时在我的主分支上做了很多更改。

是否可以将 master 分支合并到我的新分支中以使其保持最新状态,以便在新功能完成后我不会有太多合并冲突?

version-control git merge branch

83
推荐指数
1
解决办法
21万
查看次数

不小心在 Git 中错误的分支上工作

我在错误的分支上做了一些工作;我忘了检查正确的分支。是否可以更改到另一个分支并在那里提交我的更改?

git branch

9
推荐指数
1
解决办法
6517
查看次数

一旦上游合并,从 github fork 中删除分支是否安全?

我最近才尝试在 github 中分叉,并希望获得一些“最佳实践”建议。

我在 fork 中创建了一个分支,该分支被拉入上游项目的 master。它不再出现在网络图中,但它仍然存在于 github 上。我现在删除分叉上的这个分支安全吗?

编辑:为了澄清,我正在检查这是否与 github 的“不更改历史”规则冲突。

version-control git github branch

8
推荐指数
2
解决办法
4955
查看次数

网站实例的 Git 分支?

我在几个网站上工作,除了图像和 css 或设置中的一些更改外,两个网站都需要几乎相同的代码。

我刚刚读完了 Pro Git 书的分支章节,我有点困惑,如果分支不是解决这个问题的最佳解决方案,是一个分支吗?

我的意思是,我们有代码的实例 A 和 B,在 A 和 B 之间,区别在于诸如 css 颜色、url、api 键之类的东西,但大多数代码是相同的,所以我可以用什么方式来处理这个,我需要像 A 中的代码,然后“修补”它以获得 B,但我不确定如何进行不覆盖图像的合并...

无论如何,如果是分支或分叉,如何在不丢失 B 更改的情况下对 A 中的新功能进行合并?

git forking github multiple-instances branch

7
推荐指数
1
解决办法
283
查看次数

回到过去并创建分支?

我正在尝试在 git 中做以下事情:

  1. 返回一些提交(主分支)
  2. 创建一个新分支
  3. 恢复 master 分支上的最新提交(继续)

顺序并不重要,可以这样做:

  1. 创建一个新分支并切换到它
  2. 返回一些提交(从分支历史记录中删除它们)

我怎样才能做到这一点?

git branch

6
推荐指数
1
解决办法
924
查看次数

git 中的 PDF,减小大小

我有一个 git 存储库,里面有很多 PDF 文件。git 存储库的大小越来越大,以至于当 Internet 连接有限时,将存储库克隆到新主机非常复杂......

我使用git gc && git gc --aggressive它花费了我很多内存并且没有做任何有用的事情。存储库的大小仍然大致相同。

我听说过,git annex但我不知道这是否是正确的方法,因为我不想每次需要其中一个 PDF 时都拉。当然我可以这样做并将所有文件留在我的笔记本电脑上,但我想一次克隆所有内容而不是两个不同的存储库)

是否有一种减小大小并仍然可以使用 PDF 的好方法(除了减小 PDF 的大小 - 我的存储库中有一些大小超过 100MB)

pdf git branch

6
推荐指数
1
解决办法
2502
查看次数

如何设置默认拉同一个分支?

当我从新添加的遥控器中提取时,我必须明确指定分支名称:

$ git pull remote1
... 
Error: you didn't specify a branch name.

$ git pull remote1 master
Run Code Online (Sandbox Code Playgroud)

虽然我在master分支上工作。

从不同遥控器的不同分支中提取可能很有用,但它从未发生在我身上。在我们的团队中,我们从不将不同名称的分支拉到当前签出的分支中。

那么,我可以将 git 配置为始终从具有相同名称的分支中提取吗?

remote git branch

5
推荐指数
1
解决办法
5305
查看次数

可以结帐和跟踪 git 分支,但不能拉

因此,我们的 git 存储库中有一个名为creative_market. 我运行运行正常的命令git checkout --track origin/creative_market。应该在creative_market分支上的所有更改都存在。但是,如果我运行,git pull我会收到此错误:

您的配置指定与来自远程的 ref 'creative_market' 合并,但未获取此类 ref。

此外,如果我这样做,git pull origin creative_market我会得到:

致命:找不到远程参考 creative_market

致命:远端意外挂断

运行 agit branch -a清楚地显示:

遥控器/起源/creative_market

我的.git/config文件显示:

[branch "creative_market"]
    remote = origin
    merge = refs/heads/creative_market
Run Code Online (Sandbox Code Playgroud)

这与我的.git/config文件中的其他所有内容一致。

我被难住了。有任何想法吗?

git merge branch source-control pull

5
推荐指数
1
解决办法
2万
查看次数

[1 note] 在 Git(Lab) 的提交树中意味着什么?

我的公司正在使用私人 GitLab。我最近查看了分支和提交的图表,它显示了这一点。[1 note] 标签看起来像 GitLab 用于显示分支头部的标签(但“1 note”不是我们的分支之一)。

(GitLab 提交图的屏幕截图)

当我浏览 CLI 时git log,我看不到任何与之相关的内容。

有谁知道这[1 note]意味着/代表什么?

如果上下文有帮助,那么开发人员是这样做的:

查看提交树

  • 处于底部红色提交
  • 做出了 2 项绿色承诺
  • 做了一个reset --hard到底红色的承诺
  • 进行了中间的红色提交([bugfix]...)
  • 将顶部绿色提交拉入当前提交(仍然是中间红色提交),从而导致合并:顶部红色提交。

git branch gitlab

4
推荐指数
1
解决办法
3249
查看次数

在 git 中删除分支中的文件意味着也将其从主分支中删除?

我刚刚遇到了一个对 Git 来说似乎不合逻辑的情况。我有一个有大量提交的 repo,所以在这个阶段它只有一个分支(master)。

主分支

假设这个分支有一个名为MyFile.txt的文件。现在我需要创建一个不同的分支,因为我想对几个文件进行一些更改,而且我不想直接做主分支,所以我运行:

git checkout iss53
Run Code Online (Sandbox Code Playgroud)

现在架构如下所示:

新分店

好的,我已经切换到分支iss53,我运行ls -lMyFile.txt。其中一项更改包括删除MyFile.txt文件,因此:

git rm MyFile.txt
Run Code Online (Sandbox Code Playgroud)

很好,ls -l再次运行显示不再有MyFile.txt。所以我切换回分支:

git checkout master
Run Code Online (Sandbox Code Playgroud)

但是... MyFile.txt文件也消失了。我的逻辑说,如果我删除分支上的文件,应适用到分支,那么为什么在文件被删除的分支呢?请注意,我还没有进行任何提交,只是分支。

注意:两张图片均来自Git-scm

git branch

2
推荐指数
1
解决办法
1万
查看次数