2012-04-12 82 views
1

我需要在Git中頻繁地執行幾個「兩步」或「三步」命令,這要求我也指定一個分支名稱作爲參數 - 例如:Git(在Windows上使用msysgit) - 「複合」命令

git checkout (branch name) 
git pull origin (branch name) 

或類似的東西。我想「自動化」到一個別名 - 但一個簡單的Git別名不會 - 對嗎?

那麼我該如何在Bash shell腳本中做到這一點?我很熟悉MS-DOS/Windows批處理腳本 - 但我是Bash的新手。

所有的Bash別名的例子有多個Git命令我目前看到的似乎是不是有任何參數......但我在各分支之間跳來跳去,所以我肯定需要定義其中分支檢查和從中央回購更新...

任何幫助嗎?任何博客文章或* nix新手會理解的文章?任何指針都非常受歡迎!

回答

2

您可以定義一個別名是這樣的:

[alias] 
    chepull = !git checkout $1 && git pull origin 

你可以這樣做:

git chepull branch_name 

注:$1是故意不git pull origin規定,但預期應該工作。

+0

嗯....所以如果我簽出'SomeExperimentalBranch' - 我也不必在'git pull origin'中定義那個分支,因爲它是從中央repo更新的? – 2012-04-12 12:22:50

+0

@marc_s - 我的意思是,上面的別名會做'git pull origin SomeExperimentalBranch' – manojlds 2012-04-12 12:32:36

+0

工程就像一個魅力 - 非常感謝你! – 2012-04-17 04:49:01