diff options
Diffstat (limited to 'src/purgatory')
| -rw-r--r-- | src/purgatory/helpers.rs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/purgatory/helpers.rs b/src/purgatory/helpers.rs index a9f6e66..319711b 100644 --- a/src/purgatory/helpers.rs +++ b/src/purgatory/helpers.rs | |||
| @@ -58,7 +58,11 @@ pub fn extract_refs_from_state(event: &Event) -> Vec<RefPair> { | |||
| 58 | let ref_str = ref_name.as_ref(); | 58 | let ref_str = ref_name.as_ref(); |
| 59 | 59 | ||
| 60 | // Only process refs/heads/* and refs/tags/* | 60 | // Only process refs/heads/* and refs/tags/* |
| 61 | if ref_str.starts_with("refs/heads/") || ref_str.starts_with("refs/tags/") { | 61 | // Exclude peeled tag notation (e.g. "refs/tags/v1.0.0^{}") — these are |
| 62 | // git's internal dereference markers, not real refs that get pushed. | ||
| 63 | if (ref_str.starts_with("refs/heads/") || ref_str.starts_with("refs/tags/")) | ||
| 64 | && !ref_str.ends_with("^{}") | ||
| 65 | { | ||
| 62 | // Get the object SHA (first value in tag) | 66 | // Get the object SHA (first value in tag) |
| 63 | let parts = tag.clone().to_vec(); | 67 | let parts = tag.clone().to_vec(); |
| 64 | if parts.len() >= 2 { | 68 | if parts.len() >= 2 { |