What I can do to resolve “1 commit behind master”?

前端 未结 7 2038
予麋鹿
予麋鹿 2020-12-12 10:11

After pushing I\'ve been seeing this message at remote repository:

1 commit behind master.

This merge has conflicts that must be resolved before i

相关标签:
7条回答
  • 2020-12-12 10:43

    If the message is "n commits behind master."

    You need to rebase your dev branch with master. You got the above message because after checking out dev branch from master, the master branch got new commit and has moved ahead. You need to get those new commits to your dev branch.

    Steps:

    git checkout master
    git pull        #this will update your local master
    git checkout yourDevBranch
    git rebase master
    

    there can be some merge conflicts which you have to resolve.

    0 讨论(0)
  • 2020-12-12 10:46

    Use

    git cherry-pick <commit-hash>
    

    So this will pick your behind commit to git location you are on.

    0 讨论(0)
  • 2020-12-12 11:00

    Before you begin, if you are uncomfortable with a command line, you can do all the following steps using SourceTree, GitExtension, GitHub Desktop, or your favorite tool.

    To solve the issue, you might have two scenarios:

    1) Fix only remote repository branch which is behind commit

    Example: Both branches are on the remote side

    ahead === Master branch

    behind === Develop branch

    Solution:

    1. Clone the repository to the local workspace: this will give you the Master branch which is ahead with commit

      git clone repositoryUrl
      
    2. Create a branch with Develop name and checkout to that branch locally

      git checkout -b DevelopBranchName // this command creates and checkout the branch
      
    3. Pull from the remote Develop branch. Conflict might occur. if so, fix the conflict and commit the changes.

       git pull origin DevelopBranchName
      
    4. Merge the local Develop branch with the remote Develop branch

        git merge origin develop
      
    5. Push the merged branch to the remote Develop branch

        git push origin develop
      

    2) Local Master branch is behind the remote Master branch

    This means every locally created branch is behind.

    Before preceding, you have to commit or stash all the changes you made on the branch that is behind commits.

    Solution:

    1. Checkout your local Master branch

      git checkout master
      
    2. Pull from remote Master branch

      git pull origin master
      

    Now your local Master is in sync with the remote Branch but other local branches, that branched from the local Master branch, are not in sync with your local Master branch because of the above command. To fix that:

    1. Checkout the branch that is behind your local Master branch

      git checkout BranchNameBehindCommit
      
    2. Merge with the local Master branch

      git merge master  // Now your branch is in sync with local Master branch
      

    If this branch is on the remote repository, you have to push your changes

        git push origin branchBehindCommit
    
    0 讨论(0)
  • 2020-12-12 11:01

    If the branch is behind master, then delete the remote branch. Then go to local branch and run :

    git pull origin master --rebase
    

    Then, again push the branch to origin:

    git push -u origin <branch-name>
    
    0 讨论(0)
  • 2020-12-12 11:03
    1. Clone your fork:

      • git clone git@github.com:YOUR-USERNAME/YOUR-FORKED-REPO.git
    2. Add remote from original repository in your forked repository:

      • cd into/cloned/fork-repo
      • git remote add upstream git://github.com/ORIGINAL-DEV-USERNAME/REPO-YOU-FORKED-FROM.git
      • git fetch upstream
    3. Updating your fork from original repo to keep up with their changes:

      • git pull upstream master
      • git push
    0 讨论(0)
  • 2020-12-12 11:04

    Suppose currently in your branch myBranch
    Do the following :-

    git status
    

    If all changes are committed

    git pull origin master
    

    If changes are not committed than

    git add .
    
    git commit -m"commit changes"
    
    git pull origin master
    

    Check if there are any conflicts than resolve and commit changes

    git add .
    
    git commit -m"resolved conflicts message"
    

    And than push

    git push origin myBranch
    
    0 讨论(0)
提交回复
热议问题