簡體   English   中英

我怎樣才能從git status“在分支主服務器上\\ n什么都沒提交..”到“在分支主服務器上\\ n您的分支是最新的\\ n什么都沒有..”?

[英]How can i get from git status “On branch master \n Nothing to commit..” to “On branch master \n Your branch is up to date \n Nothing to ..” ?"

我正在構建一個控制git存儲庫的PHP應用程序。 我有一個執行命令git status的同步功能,雖然未返回“您的分支是最新的”,但需要采取必要的操作,例如遠程或本地分支。

我還建立了邏輯,以便刪除本地存儲庫文件夾,然后刪除mkdir,chmod和git pull。 為了測試它,我刪除了本地存儲庫文件夾,並創建了新的本地存儲庫,並且git pull成功。

現在我的邏輯在很大程度上取決於字符串“您的分支是最新的”,但是git status僅返回“在分支主目錄上\\ n Nothing ..”,以前,您的分支字符串曾經位於現在返回的兩個語句之間。

我想問一下如何從“在分支主服務器上\\ n什么都沒有。”到“在分支主服務器上\\ n您的分支是最新的\\ n什么都沒有。”?

我正在使用PHP腳本來實現上述邏輯,並使用shell_exec()執行git命令,將輸出收集在變量中,並使用this-> contains()來匹配狀態並采取相應的措施

Sync()
{
    //If folder was deleted
    if(!is_dir($repo))
    {
        if(mkdir($repo))
        {
            shell_exec(chmod)
            shell_exec(git pull)
        }
    }

    //For rest of the cases
    $output = shell_exec("git status")
    while(!this->contains("Your branch is up to date", $output))
    {
        //Take necessary actions
    }
}

我找到了解決方案。 我使用以下命令解決了我的問題:

git branch --set-upstream-to =源/主

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM