2016-04-15 4 views
-2

При попытке нажать на репо, я получаю следующее:Github не позволит мне нажать на ветку

To https://github.com/Ekultek/whitewidow.git 
! [rejected]  master -> master (fetch first) 
error: failed to push some refs to 'https://github.com/Ekultek/whitewidow.git' 
hint: Updates were rejected because the remote contains work that you do 
hint: not have locally. This is usually caused by another repository pushing 
hint: to the same ref. You may want to first integrate the remote changes 
hint: (e.g., 'git pull ...') before pushing again. 
hint: See the 'Note about fast-forwards' in 'git push --help' for details. 

Я смущен, почему она не позволит мне нажать?

Давайте разберем, как я сюда попал:

Я изменил около 300 строк кода, уже вытащил другой репозиторий, и видел весь >>>>>HEAD + >>>>>>324240283<random-numbers> вещь.

Однако я до сих пор не могу нажать, когда я стараюсь это дает мне тот же результат:

C:\Users\Justin\myscripts\rubysql\whitewidow [master +2 ~1 -0 !]> git pull https://github.com/Ekultek/whitewidow 
remote: Counting objects: 169, done. 
remote: Compressing objects: 100% (30/30), done. 
Receiving objects: 92% (156/169) al 169 (delta 14), reused 3 (delta 3), pack-reused 136 
Receiving objects: 100% (169/169), 56.76 KiB | 0 bytes/s, done. 
Resolving deltas: 100% (86/86), completed with 2 local objects. 
From https://github.com/Ekultek/whitewidow 
* branch   HEAD  -> FETCH_HEAD 
warning: Cannot merge binary files: README.md (HEAD vs. 281bf372e265d81c0b020747e59eb7935c339d78) 
Auto-merging whitewidow.rb 
CONFLICT (content): Merge conflict in whitewidow.rb 
Auto-merging log/non_exploitable.txt 
CONFLICT (content): Merge conflict in log/non_exploitable.txt 
Auto-merging log/error_log.LOG 
CONFLICT (content): Merge conflict in log/error_log.LOG 
Auto-merging log/SQL_VULN.LOG 
CONFLICT (content): Merge conflict in log/SQL_VULN.LOG 
Auto-merging lib/spider.rb 
CONFLICT (content): Merge conflict in lib/spider.rb 
Auto-merging lib/search_query.txt 
CONFLICT (content): Merge conflict in lib/search_query.txt 
Auto-merging lib/rand-agents.yaml 
CONFLICT (content): Merge conflict in lib/rand-agents.yaml 
Auto-merging lib/legal.rb 
CONFLICT (content): Merge conflict in lib/legal.rb 
Auto-merging lib/credits.rb 
Auto-merging lib/copy.rb 
Auto-merging docs/COPYRIGHT.md 
CONFLICT (add/add): Merge conflict in docs/COPYRIGHT.md 
Auto-merging docs/CHANGELOG.md 
CONFLICT (add/add): Merge conflict in docs/CHANGELOG.md 
Auto-merging README.md 
CONFLICT (content): Merge conflict in README.md 
Auto-merging Gemfile 
CONFLICT (add/add): Merge conflict in Gemfile 
Automatic merge failed; fix conflicts and then commit the result. 
C:\Users\Justin\myscripts\rubysql\whitewidow [master +5 ~2 -0 !9 | +5 ~1 -0 !9 !]> git push 
To https://github.com/Ekultek/whitewidow.git 
! [rejected]  master -> master (non-fast-forward) 
error: failed to push some refs to 'https://github.com/Ekultek/whitewidow.git' 
hint: Updates were rejected because the tip of your current branch is behind 
hint: its remote counterpart. Integrate the remote changes (e.g. 
hint: 'git pull ...') before pushing again. 
+0

Вы попробовали прочитать подсказки? Что непонятно? – jonrsharpe

+0

Ну, я действительно прочитал весь раздел '--help', и я вытащил репо, но он говорит то же самое. – JasonBorne

+0

... почему бы вам не упомянуть об этом?! * Как именно вы попали в это состояние? – jonrsharpe

ответ

0

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

с другой стороны, вы можете сделать мерзавец нажимной -f, чтобы заставить толчок, но я думаю, что вы не хотите, чтобы сделать это .. :)

+0

Так что мне нужно клонировать хранилище, прежде чем я смогу его подтолкнуть? – JasonBorne

+0

нет, вам сначала нужно сделать git pull –

0

Репозиторий происхождения был обновлен, и вы не обновил ваш локальный репозиторий. Типичным способом обновления локального репозитория является использование команды git push <remote> <branch>, которая, если вы только что создали репозиторий и не создали никаких ветвей или пультов, то вы можете просто положить git push origin master в командную строку (gitbash или linux, не уверен о Mac, не думайте, что он будет работать на windows) в каталоге, который содержит файл .git.

Если вы используете GUI-инструмент для обработки git, тогда обычно есть кнопка, которая говорит «pull». Нажмите эту кнопку, а затем повторите попытку.

+0

Я просто потянул репо, и он говорит то же самое – JasonBorne

0

В вашем удаленном репозитории есть некоторые коммиты, которые у вашего локального репозитория отсутствуют, и вы сначала потянете его. Я думаю, что кто-то подтолкнул новые коммиты к вашему удаленному репо, и вам нужно вытащить его, прежде чем нажимать свои коммиты.