相关疑难解决方法(0)

你如何创建一个远程Git分支?

我创建了一个本地分支,我想在上游"推".Stack Overflow上有一个关于如何跟踪新创建的远程分支的类似问题.

但是,我的工作流程略有不同.首先,我想创建一个本地分支,当我满意并希望分享我的分支时,我只会将其推送到上游.

  • 我该怎么办?(我的谷歌搜索似乎没有提出任何东西).
  • 我如何告诉我的同事从上游存储库中取出它?

更新使用Git 2.0,我在下面写了一个更简单的答案:https://stackoverflow.com/a/27185855/109305

git branch git-branch

3030
推荐指数
18
解决办法
200万
查看次数

如何创建一个像链接一样的HTML按钮?

我想创建一个像按钮一样的HTML按钮.因此,当您单击该按钮时,它会重定向到页面.我希望它尽可能地易于访问.

我也很喜欢它,所以URL中没有任何额外的字符或参数.

我怎样才能做到这一点?


根据到目前为止发布的答案,我目前正在这样做:

<form method="get" action="/page2">
    <button type="submit">Continue</button>
</form>
Run Code Online (Sandbox Code Playgroud)

但问题是在SafariInternet Explorer中,它在URL的末尾添加了一个问号字符.我需要找到一个不会在URL末尾添加任何字符的解决方案.

还有另外两种解决方案:使用JavaScript或样式化链接看起来像一个按钮.

使用JavaScript:

<button onclick="window.location.href='/page2'">Continue</button>
Run Code Online (Sandbox Code Playgroud)

但这显然需要JavaScript,因此屏幕阅读器不易访问.链接的要点是转到另一个页面.因此,尝试使按钮像链接一样是错误的解决方案.我的建议是你应该使用一个链接并将其设置为看起来像一个按钮.

<a href="/link/to/page2">Continue</a>
Run Code Online (Sandbox Code Playgroud)

html anchor button hyperlink htmlbutton

1769
推荐指数
21
解决办法
574万
查看次数

将(移动)子目录分离到单独的Git存储库中

我有一个Git存储库,其中包含许多子目录.现在我发现其中一个子目录与另一个子目录无关,应该分离到一个单独的存储库.

如何在将文件的历史记录保存在子目录中的同时执行此操作?

我想我可以制作一个克隆并删除每个克隆的不需要的部分,但我想这会给我一个完整的树,当检查旧版本等.这可能是可以接受的,但我宁愿能够假装两个存储库没有共享历史记录.

为了说清楚,我有以下结构:

XYZ/
    .git/
    XY1/
    ABC/
    XY2/
Run Code Online (Sandbox Code Playgroud)

但我想这样做:

XYZ/
    .git/
    XY1/
    XY2/
ABC/
    .git/
    ABC/
Run Code Online (Sandbox Code Playgroud)

git git-filter-branch git-subtree

1712
推荐指数
15
解决办法
25万
查看次数

如何使用git merge --squash?

我有一个远程Git服务器,这是我想要执行的场景:

  • 对于每个bug /功能,我创建了一个不同的Git分支

  • 我继续使用非官方的Git消息在Git分支中提交我的代码

  • 在顶级存储库中,我们必须使用官方Git消息对一个错误进行一次提交

那么如何将我的分支合并到远程分支,以便他们只为我的所有签到提交一个提交(我甚至想为此提供提交消息)?

git git-merge git-squash

1101
推荐指数
8
解决办法
52万
查看次数

我怎么知道分支是否已经合并为主分支?

我有一个包含多个分支的git存储库.

我怎么知道哪些分支已经合并到主分支中?

git

1077
推荐指数
11
解决办法
25万
查看次数

如何从Git中删除无效的远程分支引用?

在我目前的回购中,我有以下输出:

$ git branch -a
* master
  remotes/origin/master
  remotes/public/master
Run Code Online (Sandbox Code Playgroud)

我想remotes/public/master从分支列表中删除:

$ git branch -d remotes/public/master
error: branch 'remotes/public/master' not found.
Run Code Online (Sandbox Code Playgroud)

此外,输出git remote是奇怪的,因为它没有列出public:

$ git remote show 
origin
Run Code Online (Sandbox Code Playgroud)

如何从分支列表中删除"remotes/public/master"?

更新,尝试了git push命令:

$ git push public :master
fatal: 'public' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
Run Code Online (Sandbox Code Playgroud)

git branch remote-branch

719
推荐指数
8
解决办法
26万
查看次数

git远程分支被删除但仍出现在'branch -a'中

让我们说coolbranch我的存储库中有一个分支.

现在,我决定删除它(远程和本地):

git push origin :coolbranch
git branch -D coolbranch
Run Code Online (Sandbox Code Playgroud)

大!现在分支真的被删除了.

但是当我跑步的时候

git branch -a
Run Code Online (Sandbox Code Playgroud)

我还是得到:

remotes/origin/coolbranch
Run Code Online (Sandbox Code Playgroud)

需要注意的是,当我克隆一个新的存储库时,一切都很好,git branch -a并没有显示分支.

我想知道 - 有没有办法从branch -a列表中删除分支而不克隆新实例?

git git-branch

505
推荐指数
6
解决办法
11万
查看次数

你如何停止跟踪Git中的远程分支?

你如何停止跟踪Git中的远程分支?

我要求停止跟踪,因为在我的具体情况下,我想删除本地分支,但不是远程分支.删除本地删除并将删除推送到远程也将删除远程分支:

我可以这么做吗git branch -d the_branch,以后我不会传播它git push吗?

如果我git push origin :the_branch以后再跑,它会传播吗?

git branch git-track

504
推荐指数
6
解决办法
20万
查看次数

你能用Git在一个命令中删除多个分支吗?

我想清理我的本地库,其中有一吨老枝:例如3.2,3.2.1,3.2.2等.

我希望以偷偷摸摸的方式立刻删除它们中的很多.由于他们大多遵循点发布惯例,我想也许有一条捷径可以说:

git branch -D 3.2.*
Run Code Online (Sandbox Code Playgroud)

并杀死所有3.2.x分支.

我尝试了这个命令,当然,它没有用.

git

313
推荐指数
20
解决办法
10万
查看次数

如何使用TortoiseGit删除Git分支

有没有选择删除TortoiseGit的分支?

我找到了命令行解决方案.TortoiseGit中是否有实现?

git branch tortoisegit

204
推荐指数
3
解决办法
8万
查看次数