小编nul*_*ken的帖子

Git符号引用的推荐用法是什么?

以下shell代码正确创建了一系列符号引用

git symbolic-ref "first" "refs/heads/master"
git symbolic-ref "second" "first"
git symbolic-ref "nested/third" "second"
git symbolic-ref "refs/heads/fourth" "nested/third"
Run Code Online (Sandbox Code Playgroud)

以下shell代码正确解析了最新创建的对master的tip的符号引用.

git show-ref "refs/heads/fourth"
Run Code Online (Sandbox Code Playgroud)

这些用例都没有在官方文档中描述(git-symbolic-ref doc,git-show-ref doc).

但是,以下不起作用

 git check-ref-format --print "first"
Run Code Online (Sandbox Code Playgroud)

所以,我的问题是:

  • 可以在refs/heads目录中存储符号引用吗?
  • 可以链接符号引用吗?
  • 由于check-ref格式在传递时失败"first",这是否意味着不建议在同一级别创建符号引用"HEAD"?或者这个命令可能不是为了处理符号链接?

我的目的是清楚地了解支持的内容,以及我没有解决任何问题或从中获益.

git symbolic-references

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

ASP.NET MVC默认路由?

我创建了一个新的ASP.NET MVC项目并实现了站点授权过滤器.

当我将路由映射到该{controller}/{action}对时,我将一个role ="SomeRole"默认传递给该路由.

如果我通过完整的url(http://localhost/somecontroller/someaction)并指定了完整的路径,它的工作原理非常好

MapRoute("SomeAction", "somecontroller/someaction",
 new { controller = "SomeController", action = "SomeAction", role = "SomeRole");
Run Code Online (Sandbox Code Playgroud)

问题是,当有人访问时http://thesiteaddress.com,必须有一个默认路由,/home/index而不是/和我指定

MapRoute("Default", new { controller="somecontroller",action="action" });
Run Code Online (Sandbox Code Playgroud)

然后我失去role="SomeRole"了以前的MapRoute.

我怎么解决这个问题?

asp.net-mvc routing asp.net-mvc-routing

18
推荐指数
3
解决办法
6万
查看次数

合并中缺少提交的谜团

我有这个奇怪的问题,Git合并我无法解释或分类.这是一个缺失的提交.合并出错了吗?它是否已损坏数据?以下是存储库历史记录的样子:

master----\----commit A----cherry-picked changesets from topic---commit B--\----commit C----merge---
           \                                                                \              /
            topic-----------------------------------------------------------merge---------/
Run Code Online (Sandbox Code Playgroud)

现在,我的问题是,当它master被合并到topic分支中时(为了使它与提交A和B保持同步),提交B引入的变更集就不存在了!如果提交B在修改文件foobar,甚至有很多不显示这些文件与合并而改变.文件foo和文件中甚至没有任何冲突bar

现在,当我合并topic 回来时master,提交B是有效的反转,没有任何日志或逆转的痕迹!

什么可能出错?

git github

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

如何解压打包参考?

我使用git clone --mirror从github克隆了一个项目.这给我留下了一个带有packed-refs文件,.pack.idx文件的存储库.出于开发目的,我想查看松散的对象,所以我用git unpack-objects <<pack file>解压缩对象,这很好(如果你想知道,我将包文件解压缩到一个新的repo中).唯一的问题是refs/heads /仍然是空的,所有的refs仍然只在packed-refs中,但我需要它们在refs/heads /中.我无法找到一个提取或解压缩这些引用的命令,我不知道我不会相信我必须手动(或通过管道)这样做.

所以实际上我有两个问题:

  1. 有没有一种简单的方法可以从打包引用中 "恢复" 引用
  2. 如果没有,为什么不存在?如果有一个解包对象的命令,那么为refs提供相同内容的原因是什么(不要忘记甚至还有一个命令git pack-refs ...)

感谢您的任何提示和想法.

git command-line

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

如何将"开发"分支推向远程"起源"?

当我这样做git flow init时创建一个masterdevelop分支.当我添加遥控器时我做了git remote add origin git@github.com:NewB/our-repo.git.现在我在我的本地仓库初始化了git flow,并添加了远程仓库.在我做之后,git push -u origin master我有master我的起源而不是develop分支.有没有git flow publishdevelop分支?所有我看到的是publishfeaturerelease分支机构.git-flow是否要我只使用常规git而且git push origin develop呢?

git github git-flow

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

如何将现有的本地git存储库连接到Visual Studio 2013中的现有远程存储库?

我刚刚升级到Visual Studio 2013并希望使用内置的git功能.

我有一个本地git存储库 - 有各种分支和历史 - 我和其他同事一起愉快地使用远程TFS git存储库.

在VS2013中,我可以看到本地存储库和交换机分支,提交,推送等,但是当我连接到团队项目时,它没有分支,也没有与本地存储库的连接.

我可以将远程克隆到新的本地文件夹,但不知道如何将现有文件夹链接到它.

这一切都与Windows的GitHub应用程序一起使用,但VS2013工具似乎不喜欢它.

有任何想法吗?

git tfs github visual-studio-2013

16
推荐指数
2
解决办法
7611
查看次数

如何在App Engine上实现轻量级的pub-sub服务?

在他的Google I/O 2009"App Engine上的离线处理:前瞻性"演示(视频,幻灯片)中,Brett Slatkin展示了Task Queue服务.

他说

Pub-sub系统最大化事务,解耦:

  • 每秒大量小额交易
  • 一对多扇出,更换接收器
  • 保证订购,过滤,两阶段提交

并特别强调

我们的新API实现了排队,而不是pub-sub


我只对这些功能的一部分感兴趣:

  • 一对多扇出 改变 选定/固定内部接收器处理程序
  • 保证订购,过滤,两阶段提交

有针对性的目标是简化在同一Web应用程序的不同模块之间发布通知/消息.示例使用场景案例将是:

  • 使支付模块知道账单的接收.
  • 使用户能够跟踪他已决定关注/加注的特定域对象的更改.

在Task Queue服务之上实现这些的正确方法是什么?

google-app-engine publish-subscribe task-queue google-cloud-pubsub

15
推荐指数
2
解决办法
2252
查看次数

如何从GitHub存储库中删除文件?

我从我的本地仓库删除了python .pyc文件,我认为我做的是从远程github删除.

我推动了所有变化.这些文件仍然在repo上,但不在我的本地机器上.如何从github仓库中删除文件?

我尝试了以下方法:

git rm classes/file.pyc
git add .
git 
Run Code Online (Sandbox Code Playgroud)

乃至:

git rm --cached classes/file.pyc
Run Code Online (Sandbox Code Playgroud)

然后,当我尝试检出文件时,我收到此错误.

enter code here`error: pathspec 'classes/redis_ha.pyc' did not match any file(s) known to git.
Run Code Online (Sandbox Code Playgroud)

我现在不知道还能做什么.截至目前,我有一个完全损坏的git repo.

git github

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

TortoiseGit错误 - 无法获取所有引用.libgit2返回:损坏的松散引用文件

我最近使用Tortoise Git提交后出错:

"无法获取所有引用.libgit2返回:损坏的松散引用文件"

当我去检查日志时弹出.

关于如何纠正这个问题的任何想法?

windows git tortoisegit

14
推荐指数
1
解决办法
9606
查看次数

如何在Perl中将变量用作变量名?

我需要在perl中实现以下功能

printmsg(@val1, $msg1) if @val1;
printmsg(@val2, $msg2) if @val2;
printmsg(@val3, $msg3) if @val3;
printmsg(@val4, $msg4) if @val4;
printmsg(@val5, $msg5) if @val5;
printmsg(@val6, $msg6) if @val6;
Run Code Online (Sandbox Code Playgroud)

所以我写了下面的代码片段

for(my $i=1; $i < 6; $i++ ) {
    printmsg(@val$i, $msg$i) if @val$i;
}
Run Code Online (Sandbox Code Playgroud)

它不起作用并且会出错.

perl symbolic-references

13
推荐指数
2
解决办法
5576
查看次数