rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5 heartwood9b6683739e60d930ad2bd63f3e0cfdd46118c60d
{
"request": "trigger",
"version": 1,
"event_type": "patch",
"repository": {
"id": "rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5",
"name": "heartwood",
"description": "Radicle Heartwood Protocol & Stack",
"private": false,
"default_branch": "master",
"delegates": [
"did:key:z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT",
"did:key:z6MktaNvN1KVFMkSRAiN4qK5yvX1zuEEaseeX5sffhzPZRZW",
"did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
"did:key:z6MkgFq6z5fkF2hioLLSNu1zP2qEL1aHXHZzGH1FLFGAnBGz",
"did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz"
]
},
"action": "Updated",
"patch": {
"id": "ae0c6cc8b3f71c94bde192ee99e82dc70173cb75",
"author": {
"id": "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz",
"alias": "lorenz"
},
"title": "Revisit bare repositories",
"state": {
"status": "open",
"conflicts": []
},
"before": "379037956a6cb88cb826a7f57276fca4a2c6c084",
"after": "9b6683739e60d930ad2bd63f3e0cfdd46118c60d",
"commits": [
"9b6683739e60d930ad2bd63f3e0cfdd46118c60d",
"5bff08f75044330991dc6f0e1e9e986d5441caf5",
"21f4da51b1f3bd248a44e54cd284631ec1d4dbec",
"0f9d84469851dd5ea6933caeb146390154cfc64e",
"9a420c85361d16f52c6deb2303ffc7f120927e81",
"dc1efb33cd7d294e786cc8891f15b25825ddf1e2",
"daa0fb0170bf7665f45a28be182a149ace0554a8",
"05ac6fdbbcf6722e9565e512306d68c0950bfeac",
"4bc2ac7744e5a9419eb68925bc1b3738e68dacc2",
"9700ad031e82d7bd2d8a3e68f42fb205dbefd416",
"b60e69405bd2e5252fad458b34b33257a5dc291d",
"af4f89c7cc4f763019c89c01c5a75d78e28f5016",
"4837f1f9a3fd1f3e5e24bd6ed53c37c6e5a4cfdc"
],
"target": "379037956a6cb88cb826a7f57276fca4a2c6c084",
"labels": [],
"assignees": [],
"revisions": [
{
"id": "ae0c6cc8b3f71c94bde192ee99e82dc70173cb75",
"author": {
"id": "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz",
"alias": "lorenz"
},
"description": "This patchset starts off with changes to `radicle-remote-helper`: Maintainence such as making the crate binary-only and a small clean up.\nThen, handling of `GIT_DIR` is simplified throughout `radicle{,-remote-helper,-cli}`, which unlocks usage of the remote helper with bare repositories.\nNext, the commands `rad init` and `rad clone` learn to handle bare repositories.\nFinally, code paths that would error or degrade upon detecting a bare repository are removed or fixed.\n\nOverall, this patch should significantly improve interoperability with bare repositories.",
"base": "379037956a6cb88cb826a7f57276fca4a2c6c084",
"oid": "525a241ddf4428fdbe2e5076262832ac4d4a21bd",
"timestamp": 1757672429
},
{
"id": "81fd9a59dfb1f8048cdd9c74be08672494330895",
"author": {
"id": "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz",
"alias": "lorenz"
},
"description": "REVIEW",
"base": "379037956a6cb88cb826a7f57276fca4a2c6c084",
"oid": "b2b132fa62232528ad402046c0bf67165f8871cb",
"timestamp": 1757680539
},
{
"id": "37bde804d2ecf3b2f5d7dfbd169abd87f04c111c",
"author": {
"id": "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz",
"alias": "lorenz"
},
"description": "Incorporate Fintan's review.",
"base": "379037956a6cb88cb826a7f57276fca4a2c6c084",
"oid": "5bff08f75044330991dc6f0e1e9e986d5441caf5",
"timestamp": 1757780842
},
{
"id": "d3a28c470673a6d66ca0f5546642c2c36ea1ed90",
"author": {
"id": "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz",
"alias": "lorenz"
},
"description": "Implement listing `HEAD`.",
"base": "379037956a6cb88cb826a7f57276fca4a2c6c084",
"oid": "9b6683739e60d930ad2bd63f3e0cfdd46118c60d",
"timestamp": 1757798893
}
]
}
}
{
"response": "triggered",
"run_id": {
"id": "a5e5b907-0051-4f01-a8e9-79e3a3231202"
},
"info_url": "https://cci.rad.levitte.org//a5e5b907-0051-4f01-a8e9-79e3a3231202.html"
}
Started at: 2025-09-15 11:18:17.906484+02:00
Commands:
$ rad clone rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5 .
✓ Creating checkout in ./...
✓ Remote cloudhead@z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT added
✓ Remote-tracking branch cloudhead@z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT/master created for z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT
✓ Remote cloudhead@z6MktaNvN1KVFMkSRAiN4qK5yvX1zuEEaseeX5sffhzPZRZW added
✓ Remote-tracking branch cloudhead@z6MktaNvN1KVFMkSRAiN4qK5yvX1zuEEaseeX5sffhzPZRZW/master created for z6MktaNvN1KVFMkSRAiN4qK5yvX1zuEEaseeX5sffhzPZRZW
✓ Remote fintohaps@z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM added
✓ Remote-tracking branch fintohaps@z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM/master created for z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM
✓ Remote erikli@z6MkgFq6z5fkF2hioLLSNu1zP2qEL1aHXHZzGH1FLFGAnBGz added
✓ Remote-tracking branch erikli@z6MkgFq6z5fkF2hioLLSNu1zP2qEL1aHXHZzGH1FLFGAnBGz/master created for z6MkgFq6z5fkF2hioLLSNu1zP2qEL1aHXHZzGH1FLFGAnBGz
✓ Remote lorenz@z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz added
✓ Remote-tracking branch lorenz@z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz/master created for z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz
✓ Repository successfully cloned under /opt/radcis/ci.rad.levitte.org/cci/state/a5e5b907-0051-4f01-a8e9-79e3a3231202/w/
╭────────────────────────────────────╮
│ heartwood │
│ Radicle Heartwood Protocol & Stack │
│ 118 issues · 18 patches │
╰────────────────────────────────────╯
Run `cd ./.` to go to the repository directory.
Exit code: 0
$ rad patch checkout ae0c6cc8b3f71c94bde192ee99e82dc70173cb75
✓ Switched to branch patch/ae0c6cc at revision d3a28c4
✓ Branch patch/ae0c6cc setup to track rad/patches/ae0c6cc8b3f71c94bde192ee99e82dc70173cb75
Exit code: 0
$ git config advice.detachedHead false
Exit code: 0
$ git checkout 9b6683739e60d930ad2bd63f3e0cfdd46118c60d
HEAD is now at 9b668373 remote-helper: List `HEAD`
Exit code: 0
$ git show 9b6683739e60d930ad2bd63f3e0cfdd46118c60d
commit 9b6683739e60d930ad2bd63f3e0cfdd46118c60d
Author: Lorenz Leutgeb <lorenz.leutgeb@radicle.xyz>
Date: Sat Sep 13 22:12:32 2025 +0200
remote-helper: List `HEAD`
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b14d148f..76fa87b2 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -16,6 +16,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- `rad clone` now supports the flag `--bare` which works analoguously to
`git clone --bare`.
- `rad init --setup-signing` now works on bare repositories.
+- `git-remote-rad` now correctly reports the default branch to Git by listing
+ the symbolic reference `HEAD`.
## Fixed Bugs
diff --git a/crates/radicle-cli/examples/git/git-push-converge.md b/crates/radicle-cli/examples/git/git-push-converge.md
index 0696c280..49e33711 100644
--- a/crates/radicle-cli/examples/git/git-push-converge.md
+++ b/crates/radicle-cli/examples/git/git-push-converge.md
@@ -35,6 +35,7 @@ pushing to their `rad` remote -- but they won't sync to the network just yet:
$ git commit -m "Alice's commit" --allow-empty -q
$ git push rad -o no-sync
$ git ls-remote rad
+f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 HEAD
f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 refs/heads/master
```
@@ -43,6 +44,7 @@ $ git add README
$ git commit -m "Bob's commit" -q
$ git push rad -o no-sync
$ git ls-remote rad
+f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 HEAD
f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 refs/heads/master
```
@@ -51,6 +53,7 @@ $ git add README
$ git commit -m "Eve's commit" -q
$ git push rad -o no-sync
$ git ls-remote rad
+f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 HEAD
f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 refs/heads/master
```
diff --git a/crates/radicle-cli/examples/git/git-push.md b/crates/radicle-cli/examples/git/git-push.md
index 9b29e55c..2c24faaf 100644
--- a/crates/radicle-cli/examples/git/git-push.md
+++ b/crates/radicle-cli/examples/git/git-push.md
@@ -54,6 +54,7 @@ List the canonical refs:
```
$ git ls-remote rad
+f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 HEAD
f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 refs/heads/master
```
diff --git a/crates/radicle-cli/examples/rad-init-existing-bare.md b/crates/radicle-cli/examples/rad-init-existing-bare.md
index ba2107ab..ea727896 100644
--- a/crates/radicle-cli/examples/rad-init-existing-bare.md
+++ b/crates/radicle-cli/examples/rad-init-existing-bare.md
@@ -40,7 +40,7 @@ $ git remote show rad
* remote rad
Fetch URL: rad://z42hL2jL4XNk6K8oHQaSWfMgCL7ji
Push URL: rad://z42hL2jL4XNk6K8oHQaSWfMgCL7ji/z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi
- HEAD branch: (unknown)
+ HEAD branch: master
Remote branch:
master new (next fetch will store in remotes/rad)
Local ref configured for 'git push':
diff --git a/crates/radicle-cli/examples/rad-init-existing.md b/crates/radicle-cli/examples/rad-init-existing.md
index aa326c1f..db77e809 100644
--- a/crates/radicle-cli/examples/rad-init-existing.md
+++ b/crates/radicle-cli/examples/rad-init-existing.md
@@ -37,7 +37,7 @@ $ git remote show rad
* remote rad
Fetch URL: rad://z42hL2jL4XNk6K8oHQaSWfMgCL7ji
Push URL: rad://z42hL2jL4XNk6K8oHQaSWfMgCL7ji/z6MknSLrJoTcukLrE435hVNQT4JUhbvWLX4kUzqkEStBU8Vi
- HEAD branch: (unknown)
+ HEAD branch: master
Remote branch:
master new (next fetch will store in remotes/rad)
Local ref configured for 'git push':
diff --git a/crates/radicle-cli/examples/rad-patch-fetch-2.md b/crates/radicle-cli/examples/rad-patch-fetch-2.md
index a9392665..4b260917 100644
--- a/crates/radicle-cli/examples/rad-patch-fetch-2.md
+++ b/crates/radicle-cli/examples/rad-patch-fetch-2.md
@@ -22,6 +22,7 @@ $ git branch -r
$ git pull
Already up to date.
$ git branch -r
+ rad/HEAD -> rad/master
rad/master
rad/patches/5e2dedcc5d515fcbc1cca483d3376609fe889bfb
```
diff --git a/crates/radicle-cli/examples/rad-patch-pull-update.md b/crates/radicle-cli/examples/rad-patch-pull-update.md
index 294bbdbc..ce22fe60 100644
--- a/crates/radicle-cli/examples/rad-patch-pull-update.md
+++ b/crates/radicle-cli/examples/rad-patch-pull-update.md
@@ -112,6 +112,7 @@ $ rad patch show 55b9721
│ ↑ updated to f91e056da05b2d9a58af1160c76245bc3debf7a8 (cad2666) now │
╰─────────────────────────────────────────────────────────────────────╯
$ git ls-remote rad
+f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 HEAD
f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 refs/heads/master
cad2666a8a2250e4dee175ed5044be2c251ff08b refs/heads/patches/55b9721ed7f6bfec38f43729e9b6631c5dc812fb
```
diff --git a/crates/radicle-cli/examples/rad-patch-via-push.md b/crates/radicle-cli/examples/rad-patch-via-push.md
index b21a8cc4..279ea93a 100644
--- a/crates/radicle-cli/examples/rad-patch-via-push.md
+++ b/crates/radicle-cli/examples/rad-patch-via-push.md
@@ -61,6 +61,7 @@ And let's look at our local and remote refs:
$ git show-ref
42d894a83c9c356552a57af09ccdbd5587a99045 refs/heads/feature/1
f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 refs/heads/master
+f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 refs/remotes/rad/HEAD
f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 refs/remotes/rad/master
42d894a83c9c356552a57af09ccdbd5587a99045 refs/remotes/rad/patches/6035d2f582afbe01ff23ea87528ae523d76875b6
```
diff --git a/crates/radicle-remote-helper/src/list.rs b/crates/radicle-remote-helper/src/list.rs
index fef535d1..8b535d93 100644
--- a/crates/radicle-remote-helper/src/list.rs
+++ b/crates/radicle-remote-helper/src/list.rs
@@ -46,20 +46,36 @@ pub fn for_fetch<R: ReadRepository + cob::Store<Namespace = NodeId> + 'static>(
println!("{oid} {name}");
}
} else {
- // Listing canonical refs.
- // We skip over `refs/rad/*`, since those are not meant to be fetched into a working copy.
- for glob in [
- git::refspec::pattern!("refs/heads/*"),
- git::refspec::pattern!("refs/tags/*"),
- ] {
- for (name, oid) in stored.references_glob(&glob)? {
- println!("{oid} {name}");
+ {
+ // List the symbolic reference `HEAD`, which is interpreted by
+ // Git clients to determine the default branch.
+ let head = git::refname!("HEAD");
+
+ if let Some(target) = stored
+ .find_reference(&head)?
+ .symbolic_target() { println!("@{target} {head}") }
+ }
+
+ {
+ // List canonical references.
+ // Skip over `refs/rad/*`, since those are not meant to be fetched into a working copy.
+ for glob in [
+ git::refspec::pattern!("refs/heads/*"),
+ git::refspec::pattern!("refs/tags/*"),
+ ] {
+ for (name, oid) in stored.references_glob(&glob)? {
+ println!("{oid} {name}");
+ }
}
}
- // List the patch refs, but don't abort if there's an error, as this would break
- // all fetch behavior. Instead, just output an error to the user.
- if let Err(e) = patch_refs(profile, stored) {
- eprintln!("remote: error listing patch refs: {e}");
+
+ {
+ // List the patch refs, but do not abort if there is an error,
+ // as this would break all fetch behavior.
+ // Instead, just output an error to the user.
+ if let Err(e) = patch_refs(profile, stored) {
+ eprintln!("remote: error listing patch refs: {e}");
+ }
}
}
println!();
diff --git a/crates/radicle-remote-helper/src/main.rs b/crates/radicle-remote-helper/src/main.rs
index e67a2011..b4ae2e49 100644
--- a/crates/radicle-remote-helper/src/main.rs
+++ b/crates/radicle-remote-helper/src/main.rs
@@ -366,4 +366,4 @@ pub(crate) fn patches_mut<'a>(
}
Err(err) => Err(err.into()),
}
-}
\ No newline at end of file
+}
diff --git a/crates/radicle-remote-helper/src/push.rs b/crates/radicle-remote-helper/src/push.rs
index c41c84d3..d5fb4963 100644
--- a/crates/radicle-remote-helper/src/push.rs
+++ b/crates/radicle-remote-helper/src/push.rs
@@ -566,7 +566,8 @@ where
if let Some(upstream) = upstream {
// Setup current branch so that pushing updates the patch.
- if let Some(branch) = rad::setup_patch_upstream(&patch, head, working, upstream, false)?
+ if let Some(branch) =
+ rad::setup_patch_upstream(&patch, head, working, upstream, false)?
{
if let Some(name) = branch.name()? {
if profile.hints() {
diff --git a/crates/radicle/src/storage.rs b/crates/radicle/src/storage.rs
index 92892959..91999a2c 100644
--- a/crates/radicle/src/storage.rs
+++ b/crates/radicle/src/storage.rs
@@ -588,6 +588,12 @@ pub trait ReadRepository: Sized + ValidateRepository {
/// Check whether the given commit is an ancestor of another commit.
fn is_ancestor_of(&self, ancestor: Oid, head: Oid) -> Result<bool, git::ext::Error>;
+ /// Look up a reference to one of the objects in a repository.
+ fn find_reference(
+ &self,
+ reference: &git::RefStr,
+ ) -> Result<git2::Reference<'_>, git::ext::Error>;
+
/// Get the object id of a reference under the given remote.
fn reference_oid(
&self,
diff --git a/crates/radicle/src/storage/git.rs b/crates/radicle/src/storage/git.rs
index 4bc313d1..555065fa 100644
--- a/crates/radicle/src/storage/git.rs
+++ b/crates/radicle/src/storage/git.rs
@@ -27,7 +27,7 @@ use crate::storage::{
use crate::{git, node};
pub use crate::git::{
- ext, raw, refname, refspec, Oid, PatternStr, Qualified, RefError, RefString, UserInfo,
+ ext, raw, refname, refspec, Oid, PatternStr, Qualified, RefError, RefStr, RefString, UserInfo,
};
pub use crate::storage::{Error, RepositoryError};
@@ -695,6 +695,13 @@ impl ReadRepository for Repository {
Ok(oid.into())
}
+ fn find_reference(
+ &self,
+ reference: &git::RefStr,
+ ) -> Result<git2::Reference<'_>, git::ext::Error> {
+ Ok(self.backend.find_reference(reference.as_str())?)
+ }
+
fn commit(&self, oid: Oid) -> Result<git2::Commit, git::Error> {
self.backend
.find_commit(oid.into())
diff --git a/crates/radicle/src/storage/git/cob.rs b/crates/radicle/src/storage/git/cob.rs
index 6f8fee88..f66dbdea 100644
--- a/crates/radicle/src/storage/git/cob.rs
+++ b/crates/radicle/src/storage/git/cob.rs
@@ -376,6 +376,13 @@ impl<R: storage::ReadRepository> ReadRepository for DraftStore<'_, R> {
fn merge_base(&self, left: &Oid, right: &Oid) -> Result<Oid, git::ext::Error> {
self.repo.merge_base(left, right)
}
+
+ fn find_reference(
+ &self,
+ _reference: &super::RefStr,
+ ) -> Result<git2::Reference<'_>, git::ext::Error> {
+ todo!()
+ }
}
impl<R: storage::WriteRepository> cob::object::Storage for DraftStore<'_, R> {
diff --git a/crates/radicle/src/test/storage.rs b/crates/radicle/src/test/storage.rs
index a2ea5db6..c052bd40 100644
--- a/crates/radicle/src/test/storage.rs
+++ b/crates/radicle/src/test/storage.rs
@@ -319,6 +319,13 @@ impl ReadRepository for MockRepository {
fn merge_base(&self, _left: &Oid, _right: &Oid) -> Result<Oid, git::ext::Error> {
todo!()
}
+
+ fn find_reference(
+ &self,
+ _reference: &git::RefStr,
+ ) -> Result<git2::Reference<'_>, git::ext::Error> {
+ todo!()
+ }
}
impl WriteRepository for MockRepository {
Exit code: 0
shell: 'cargo --version rustc --version cargo fmt --check cargo clippy --all-targets --workspace -- --deny warnings cargo build --all-targets --workspace cargo doc --workspace --no-deps cargo test --workspace --no-fail-fast '
Commands:
$ podman run --name a5e5b907-0051-4f01-a8e9-79e3a3231202 -v /opt/radcis/ci.rad.levitte.org/cci/state/a5e5b907-0051-4f01-a8e9-79e3a3231202/s:/a5e5b907-0051-4f01-a8e9-79e3a3231202/s:ro -v /opt/radcis/ci.rad.levitte.org/cci/state/a5e5b907-0051-4f01-a8e9-79e3a3231202/w:/a5e5b907-0051-4f01-a8e9-79e3a3231202/w -w /a5e5b907-0051-4f01-a8e9-79e3a3231202/w -v /opt/radcis/ci.rad.levitte.org/.radicle:/${id}/.radicle:ro -e RAD_HOME=/${id}/.radicle rust:bookworm bash /a5e5b907-0051-4f01-a8e9-79e3a3231202/s/script.sh
time="2025-09-15T11:18:19+02:00" level=error msg="User-selected graph driver \"overlay\" overwritten by graph driver \"vfs\" from database - delete libpod local files (\"/opt/radcis/ci.rad.levitte.org/.local/share/containers/storage\") to resolve. May prevent use of images created by other tools"
time="2025-09-15T11:18:19+02:00" level=error msg="User-selected graph driver \"overlay\" overwritten by graph driver \"vfs\" from database - delete libpod local files (\"/opt/radcis/ci.rad.levitte.org/.local/share/containers/storage\") to resolve. May prevent use of images created by other tools"
+ cargo --version
info: syncing channel updates for '1.88-x86_64-unknown-linux-gnu'
info: latest update on 2025-06-26, rust version 1.88.0 (6b00bc388 2025-06-23)
info: downloading component 'cargo'
info: downloading component 'clippy'
info: downloading component 'rust-docs'
info: downloading component 'rust-src'
info: downloading component 'rust-std'
info: downloading component 'rustc'
info: downloading component 'rustfmt'
info: installing component 'cargo'
info: installing component 'clippy'
info: installing component 'rust-docs'
info: installing component 'rust-src'
info: installing component 'rust-std'
info: installing component 'rustc'
info: installing component 'rustfmt'
cargo 1.88.0 (873a06493 2025-05-10)
+ rustc --version
rustc 1.88.0 (6b00bc388 2025-06-23)
+ cargo fmt --check
Diff in /a5e5b907-0051-4f01-a8e9-79e3a3231202/w/crates/radicle-remote-helper/src/list.rs:51:
// Git clients to determine the default branch.
let head = git::refname!("HEAD");
- if let Some(target) = stored
- .find_reference(&head)?
- .symbolic_target() { println!("@{target} {head}") }
+ if let Some(target) = stored.find_reference(&head)?.symbolic_target() {
+ println!("@{target} {head}")
+ }
}
{
Exit code: 1
{
"response": "finished",
"result": "failure"
}