libgit2 / libgit2/libgit2sharp
Let's mimic git.git auto tag fetch behavior.
未关闭
还没有人认领这个 Issue。
Up for grabs
- 主要语言
- C#
- 星标
- 3.5k
- 派生
- 925
- PR 合并指标
- 30 天内没有已合并 PR
描述
Related to https://github.com/libgit2/libgit2sharp/pull/927/files#r23450279
git fetch against a newly initialized repository with the following config
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
hideDotFiles = dotGitOnly
[remote "origin"]
url = https://github.com/libgit2/TestGitRepository
fetch = +refs/heads/*:refs/remotes/origin/*
outputs
$ git fetch
remote: Counting objects: 68, done.
remote: Total 68 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (68/68), done.
From https://github.com/libgit2/TestGitRepository
* [new branch] first-merge -> origin/first-merge
* [new branch] master -> origin/master
* [new branch] no-parent -> origin/no-parent
remote: Counting objects: 1, done.
remote: Total 1 (delta 0), reused 1 (delta 0)
Unpacking objects: 100% (1/1), done.
* [new tag] annotated_tag -> annotated_tag
* [new tag] blob -> blob
* [new tag] commit_tree -> commit_tree
git is noticing that the server did not automatically send the tags and is performing a second fetch. This second fetch is completely different from the first one
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
issue 中没有指定源文件或测试。首先定位 fetch 的实现及其现有的 fetch 测试,然后在服务器不会自动发送标签时,将初始 fetch 与 Git 后续的标签 fetch 进行比较。完成的标准是匹配所演示的两次 fetch 行为,并报告新获取的标签。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- csharp, git
- 领域
- tooling
- Issue 类型
- 功能
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 35/100