2015-02-13 2 views
-1

git fetch origin не получает новую ветку, и поэтому --track всегда терпит неудачу, несмотря ни на что.Git отказывается отслеживать или иным образом распознавать удаленную ветвь [решена]

https://gist.github.com/dubslow/dab61346cc06d6b9cf7b

Это^все, что я пытался. Вы заметите, что я пробовал все команды в соответствующем вопросе "Cannot update paths and switch to branch at the same time", но все равно безуспешно. Я понятия не имею, что происходит.

Edit: С этим новым местным отделением, я попытался оттолкнуть к моему собственному пульта дистанционного управления, но получил эту запутанную сообщение:

[email protected]⌚1643 ~/qtox/libs/libtoxcore-latest ∰∂ git remote add mine ssh://[email protected]/dubslow/toxcore.git 
[email protected]⌚1644 ~/qtox/libs/libtoxcore-latest ∰∂ git push mine new_api 
Counting objects: 566, done. 
Delta compression using up to 8 threads. 
Compressing objects: 100% (461/461), done. 
Writing objects: 100% (566/566), 549.87 KiB | 0 bytes/s, done. 
Total 566 (delta 302), reused 260 (delta 102) 
To ssh://[email protected]/dubslow/toxcore.git 
! [remote rejected] new_api -> new_api (shallow update not allowed) 
error: failed to push some refs to 'ssh://[email protected]/dubslow/toxcore.git' 
[email protected]⌚1644 ~/qtox/libs/libtoxcore-latest ∰∂ git push mine +new_api 
Counting objects: 566, done. 
Delta compression using up to 8 threads. 
Compressing objects: 100% (461/461), done. 
Writing objects: 100% (566/566), 549.87 KiB | 0 bytes/s, done. 
Total 566 (delta 302), reused 260 (delta 102) 
To ssh://[email protected]/dubslow/toxcore.git 
! [remote rejected] new_api -> new_api (shallow update not allowed) 
error: failed to push some refs to 'ssh://[email protected]/dubslow/toxcore.git' 

Edit: Как Andrew C указывает, эти сообщения об ошибках означало репо был мелкий клон, и я полностью забыл, и сообщения об ошибках были бесполезны (за исключением тех случаев, когда я пытался подтолкнуть, и это было только полезно для кого-то более опытного с git).

+0

Что сообщает 'git -version'? У вас есть несколько пультов? –

+0

git --version git version 2.1.4 У меня есть только «origin» и тот, который я добавил в журнал оболочки выше. – Dubslow

+1

'git checkout ' будет создавать ветку только в том случае, если она существует в одном источнике. В противном случае вам нужно явно указать, где отслеживать из 'git checkout -b origin/'. Я бы предложил, чтобы вы не использовали мелкие клоны. –

ответ

2

Синтаксис

git checkout <branch>

Когда <branch> уже не существует будет работать только тогда, когда существует <branch> на одного пульта дистанционного управления. Если у вас есть несколько пультов ДУ вы должны явно сказать, пульт дистанционного управления для отслеживания из с

git checkout -b <branch> <remote>/<branch>

Эта часть сообщения об ошибке

(shallow update not allowed)

Предлагает у вас есть мелкий клон, который может вызвать все виды странного поведения.

0

Простой git checkout new_api должен работать, если у вас нет локальной ветви этого имени. Локальный ref (случайно), созданный с тем же именем, будет конфликтовать, поэтому сначала удалите его с git branch -d new_api.

git checkout <branch> 
    To prepare for working on <branch>, switch to it by updating 
    the index and the files in the working tree, and by pointing HEAD at 
    the branch. Local modifications to the files in the working tree are 
    kept, so that they can be committed to the <branch>. 

    If <branch> is not found but there does exist a tracking branch in 
    exactly one remote (call it <remote>) with a matching name, 
    treat as equivalent to 

     $ git checkout -b <branch> --track <remote>/<branch> 
+0

Пожалуйста, задайте свой вопрос и то, что вы пробовали здесь, а не на другом сайте. – UpAndAdam

+0

@UpAndAdam Что значит? Вы предпочли бы, чтобы я запустил журнал оболочки, или у StackOverflow есть схожие функции? – Dubslow

Смежные вопросы