mirror of
https://github.com/Llewellynvdm/starship.git
synced 2024-11-24 13:47:38 +00:00
fix(git_branch): correct variable name for remote branch (#3897)
This commit is contained in:
parent
d4d84a592c
commit
bd7957f01c
4
.github/config-schema.json
vendored
4
.github/config-schema.json
vendored
@ -461,7 +461,7 @@
|
|||||||
"default": {
|
"default": {
|
||||||
"always_show_remote": false,
|
"always_show_remote": false,
|
||||||
"disabled": false,
|
"disabled": false,
|
||||||
"format": "on [$symbol$branch]($style)(:[$remote]($style)) ",
|
"format": "on [$symbol$branch(:$remote_branch)]($style) ",
|
||||||
"ignore_branches": [],
|
"ignore_branches": [],
|
||||||
"only_attached": false,
|
"only_attached": false,
|
||||||
"style": "bold purple",
|
"style": "bold purple",
|
||||||
@ -2543,7 +2543,7 @@
|
|||||||
"type": "object",
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
"format": {
|
"format": {
|
||||||
"default": "on [$symbol$branch]($style)(:[$remote]($style)) ",
|
"default": "on [$symbol$branch(:$remote_branch)]($style) ",
|
||||||
"type": "string"
|
"type": "string"
|
||||||
},
|
},
|
||||||
"symbol": {
|
"symbol": {
|
||||||
|
@ -1419,17 +1419,17 @@ The `git_branch` module shows the active branch of the repo in your current dire
|
|||||||
|
|
||||||
### Options
|
### Options
|
||||||
|
|
||||||
| Option | Default | Description |
|
| Option | Default | Description |
|
||||||
| -------------------- | -------------------------------- | ---------------------------------------------------------------------------------------- |
|
| -------------------- | ------------------------------------------------- | ---------------------------------------------------------------------------------------- |
|
||||||
| `always_show_remote` | `false` | Shows the remote tracking branch name, even if it is equal to the local branch name. |
|
| `always_show_remote` | `false` | Shows the remote tracking branch name, even if it is equal to the local branch name. |
|
||||||
| `format` | `"on [$symbol$branch]($style) "` | The format for the module. Use `"$branch"` to refer to the current branch name. |
|
| `format` | `"on [$symbol$branch(:$remote_branch)]($style) "` | The format for the module. Use `"$branch"` to refer to the current branch name. |
|
||||||
| `symbol` | `" "` | A format string representing the symbol of git branch. |
|
| `symbol` | `" "` | A format string representing the symbol of git branch. |
|
||||||
| `style` | `"bold purple"` | The style for the module. |
|
| `style` | `"bold purple"` | The style for the module. |
|
||||||
| `truncation_length` | `2^63 - 1` | Truncates a git branch to `N` graphemes. |
|
| `truncation_length` | `2^63 - 1` | Truncates a git branch to `N` graphemes. |
|
||||||
| `truncation_symbol` | `"…"` | The symbol used to indicate a branch name was truncated. You can use `""` for no symbol. |
|
| `truncation_symbol` | `"…"` | The symbol used to indicate a branch name was truncated. You can use `""` for no symbol. |
|
||||||
| `only_attached` | `false` | Only show the branch name when not in a detached `HEAD` state. |
|
| `only_attached` | `false` | Only show the branch name when not in a detached `HEAD` state. |
|
||||||
| `ignore_branches` | `[]` | A list of names to avoid displaying. Useful for "master" or "main". |
|
| `ignore_branches` | `[]` | A list of names to avoid displaying. Useful for "master" or "main". |
|
||||||
| `disabled` | `false` | Disables the `git_branch` module. |
|
| `disabled` | `false` | Disables the `git_branch` module. |
|
||||||
|
|
||||||
### Variables
|
### Variables
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@ pub struct GitBranchConfig<'a> {
|
|||||||
impl<'a> Default for GitBranchConfig<'a> {
|
impl<'a> Default for GitBranchConfig<'a> {
|
||||||
fn default() -> Self {
|
fn default() -> Self {
|
||||||
GitBranchConfig {
|
GitBranchConfig {
|
||||||
format: "on [$symbol$branch]($style)(:[$remote]($style)) ",
|
format: "on [$symbol$branch(:$remote_branch)]($style) ",
|
||||||
symbol: " ",
|
symbol: " ",
|
||||||
style: "bold purple",
|
style: "bold purple",
|
||||||
truncation_length: std::i64::MAX,
|
truncation_length: std::i64::MAX,
|
||||||
|
@ -396,6 +396,42 @@ mod tests {
|
|||||||
repo_dir.close()
|
repo_dir.close()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_remote() -> io::Result<()> {
|
||||||
|
let remote_dir = fixture_repo(FixtureProvider::Git)?;
|
||||||
|
let repo_dir = fixture_repo(FixtureProvider::Git)?;
|
||||||
|
|
||||||
|
create_command("git")?
|
||||||
|
.args(&["checkout", "-b", "test_branch"])
|
||||||
|
.current_dir(repo_dir.path())
|
||||||
|
.output()?;
|
||||||
|
|
||||||
|
create_command("git")?
|
||||||
|
.args(&["remote", "add", "--fetch", "remote_repo"])
|
||||||
|
.arg(remote_dir.path())
|
||||||
|
.current_dir(repo_dir.path())
|
||||||
|
.output()?;
|
||||||
|
|
||||||
|
create_command("git")?
|
||||||
|
.args(&["branch", "--set-upstream-to", "remote_repo/master"])
|
||||||
|
.current_dir(repo_dir.path())
|
||||||
|
.output()?;
|
||||||
|
|
||||||
|
let actual = ModuleRenderer::new("git_branch")
|
||||||
|
.path(&repo_dir.path())
|
||||||
|
.config(toml::toml! {
|
||||||
|
[git_branch]
|
||||||
|
format = "$branch(:$remote_name/$remote_branch)"
|
||||||
|
})
|
||||||
|
.collect();
|
||||||
|
|
||||||
|
let expected = Some("test_branch:remote_repo/master");
|
||||||
|
|
||||||
|
assert_eq!(expected, actual.as_deref());
|
||||||
|
repo_dir.close()?;
|
||||||
|
remote_dir.close()
|
||||||
|
}
|
||||||
|
|
||||||
// This test is not possible until we switch to `git status --porcelain`
|
// This test is not possible until we switch to `git status --porcelain`
|
||||||
// where we can mock the env for the specific git process. This is because
|
// where we can mock the env for the specific git process. This is because
|
||||||
// git2 does not care about our mocking and when we set the real `GIT_DIR`
|
// git2 does not care about our mocking and when we set the real `GIT_DIR`
|
||||||
|
Loading…
Reference in New Issue
Block a user