Chan Chen Coding...

Git: Your branch is ahead of the tracked remote branch

Problem

When moving to a local branch, git says I'm "ahead of the tracked remote branch", but a git push doesn't update the remote branch.

$ git checkout mybranch 

Your branch is ahead of the tracked remote branch 'origin/remotebranch' by 1 commit.
$ git push Everything up-to-date

Solution 1. Pushing mybranch to remotebranch

$ git push origin mybranch:remotebranch 

or for later pushes with just git push origin you can put this in .git/config with this command:

$ git config remote.origin.push mybranch:remotebranch 

Solution 2. Reset mybranch to state of remotebranch

NOTE: Careful! You will loose commits made to mybranch!

$ git reset --hard origin/remotebranch 

Problem: You cann't push to git://github.com/username/repo.git

There should be something wrong with your remote configuration, set like the follow:
$ git remote rm origin 
$ git remote add origin
$ git remote add origin git@github.com:tualatrix/gentoo.git
$ git push origin

Problem: Permission denied (publickey)

  1. Generate a new SSH key.

    To generate a new SSH key, enter the code below. We want the default settings so when asked to enter a file in which to save the key, just press enter.

    $ ssh-keygen -t rsa -C "your_email@youremail.com"Creates a new ssh key using the provided emailGenerating public/private rsa key pair.Enter file in which to save the key (/Users/your_user_directory/.ssh/id_rsa):<press enter>

    Now you need to enter a passphrase.

    Why do passphrases matter?

    Enter passphrase (empty for no passphrase):<enter a passphrase>Enter same passphrase again:<enter passphrase again>

    Which should give you something like this:

    Your identification has been saved in /Users/your_user_directory/.ssh/id_rsa.Your public key has been saved in /Users/your_user_directory/.ssh/id_rsa.pub.The key fingerprint is:01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db user_name@username.comThe key's randomart image is:+--[ RSA 2048]----+|     .+   +      ||       = o O .   ||        = * *    ||       o = +     ||      o S .      ||     o o =       ||      o . E      ||                 ||                 |+-----------------+
  2. Add your SSH key to GitHub.

    On the GitHub site Click “Account Settings” > Click “SSH Public Keys” > Click “Add another public key”

    Account Settings

    Open the id_rsa.pub file with a text editor (Notepad, TextEdit, or gedit will do just fine). This is your public SSH key. You may need to turn on “view hidden files” to find it because the.ssh directory is hidden. It’s important you copy your SSH key exactly as it is written without adding any newlines or whitespace. Now paste it into the “Key” field.

Problem: Delete file on remote repo
$ git add . -A
$ git commit -m "remove some file"

$ git add . -A
$ git commit -m "remove some file"



-----------------------------------------------------
Silence, the way to avoid many problems;
Smile, the way to solve many problems;

posted on 2012-02-24 17:07 Chan Chen 阅读(1292) 评论(0)  编辑  收藏 所属分类: Software Methodology


只有注册用户登录后才能发表评论。


网站导航: