Этот сайт не наркоманов. Это сайт программистов.

Добро пожаловать на Пыху!

Логин:
Пароль:
 

Нет прописки? Зарегистрируйся!

Новости

Мы в твиттере!
Мы вконтакте!
Мы на яндексе!

Краснодарское время: 25 Май, 2012, 06:09:19

Страниц: [1]
Печать
Автор Тема: git и ветки  (Прочитано 327 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
SpartakuS    ↓ 
07 Ноябрь, 2011, 09:16:41
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 32
Сообщений: 2444
Сила слова: 1.31

Вот решил юзать гитхаб. Появилась проблема в тот момент как решил ветки заюзать.
У меня была ветка мастер с некоторыми изменениями. Там я начал делать возможность минусовать для одного проекта. Далее в ожидании дизайна я решил начать комменты и заодно научится с ветками работать.
делаю:
git checkout -b comments
у меня создалась ветка комментс в том же состоянии в котором была мастер. Сейчас я нахожусь в комментс.
Далее делаю:
git reset --hard
И теперь у меня трутся изменения в обоих ветках. Это я что то не так сделал?
Записан


цска ебаное гавно.
SpartakuS    ↓ 
07 Ноябрь, 2011, 09:23:04 , спустя 6 минут 23 секунды
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 32
Сообщений: 2444
Сила слова: 1.31

И да. Я не знаю в какой раздел было создавать эту тем, поэтому создал в традиционном)
Записан


цска ебаное гавно.
adw0rd    ↓ 
07 Ноябрь, 2011, 12:17:03 , спустя 2 часа 53 минуты 59 секунд
НЕ ХУЕТА! ХУЕТА!

эдво
Группа: в ухо

Карма: не нужна
Сообщений: 17632
Сила слова: 1.67


Вот решил юзать гитхаб. Появилась проблема в тот момент как решил ветки заюзать.
У меня была ветка мастер с некоторыми изменениями. Там я начал делать возможность минусовать для одного проекта. Далее в ожидании дизайна я решил начать комменты и заодно научится с ветками работать.
делаю:
git checkout -b comments
у меня создалась ветка комментс в том же состоянии в котором была мастер. Сейчас я нахожусь в комментс.
Далее делаю:
git reset --hard
И теперь у меня трутся изменения в обоих ветках. Это я что то не так сделал?

Какие изменения? staged/unstaged? Или вообще untracked?
Спустя 40 секунд добавил
Думаю у тебя труться untracked, потомучто они вообще не в бранче, вот и все.
Спустя 2 минуты 45 секунд добавил
Вообщем когда ты сделал git reset --hard, то ты сбросил все изменения в HEAD, в том числе untracked изменения, то есть все новые изменения, которые ты не добавил (git add) будут сброшены и они не имеют отношения к ветке вообще.
Спустя 2 минуты 38 секунд добавил
Чтобы изменения зафиксировались за веткой необходимо их закомитить:
git co -b comments
... тут что-то меняешь, добавляешь файлы ...
git add -p (а для новых файлов git add <файл>, или вообще git add .)
git ci -m "каммент" (можешь git ci -am "каммент", вместо git add .)
git co master
 
вот тогда будут разные изменения в ветках
Спустя 46 секунд добавил
Потом покажи
git co master
git log
 
git co comments
git log
Записан

Python, Django, Git, Emacs, Nginx, MySQL, SphinxSearch, FreeBSD/Linux
Мой блог * Кинсбург * Либург * Я на GitHub
Sinkler    ↓ 
07 Ноябрь, 2011, 12:47:34 , спустя 30 минут 31 секунду
НЕ ХУЕТА! ХУЕТА!

Похуй, пляшем!
Группа: Джедаи

Карма: 73
Сообщений: 6808
Сила слова: 1.07

закоммитить по ходу забыл
Спустя 1 минуту 9 секунд добавил
хм, как тут появилось сообщение эдво получасовой давности)))
Записан

SpartakuS    ↓ 
07 Ноябрь, 2011, 04:47:57 , спустя 4 часа 23 секунды
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 32
Сообщений: 2444
Сила слова: 1.31

Мистика на пiха.ру
Записан


цска ебаное гавно.
SpartakuS    ↓ 
07 Ноябрь, 2011, 04:53:18 , спустя 5 минут 21 секунду
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 32
Сообщений: 2444
Сила слова: 1.31

adw0rd, я сделал только init, потом два коммита (и пуша на гитхаб). Потом начал добавлять git add только новые файлы. И дальше как написано в первом посте.
Что такое stage/unstage/untracked я не знаю. Но погуглю.
Записан


цска ебаное гавно.
SpartakuS    ↓ 
07 Ноябрь, 2011, 05:01:45 , спустя 8 минут 27 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 32
Сообщений: 2444
Сила слова: 1.31

git co master
git: 'co' is not a git command. See 'git --help'.
:)))
 
Вот чекаут комментс
Text
git log
commit 646a31e041292b6895b2792dc33c3f5bb5442a3c
Author: Matvey Vasenin <vaseninm@gmail.com>
Date:   Fri Nov 4 00:10:32 2011 +0400
 
    Теперь будет использоваться история браузера при переходе по страницам
 
commit a5ca43efca1917fc8b0456a77890b3fadfd1ff2a
Author: Matvey Vasenin <vaseninm@gmail.com>
Date:   Thu Nov 3 23:42:15 2011 +0400
 
    .htaccess забыл
 
commit b3c5797a3717b250e268874edfb0c21280354e4e
Author: Matvey Vasenin <vaseninm@gmail.com>
Date:   Thu Nov 3 19:26:38 2011 +0400
 
    Исправил ошибочку. Временный файл удалил.
 
commit a60f372da641e77d77b09976a837c963c717eb20
Author: Matvey Vasenin <vaseninm@gmail.com>
Date:   Thu Nov 3 19:21:56 2011 +0400
 
    Залили исходники
 

а вот чекаут мастер
Text
git log
commit 646a31e041292b6895b2792dc33c3f5bb5442a3c
Author: Matvey Vasenin <vaseninm@gmail.com>
Date:   Fri Nov 4 00:10:32 2011 +0400
 
    Теперь будет использоваться история браузера при переходе по страницам
 
commit a5ca43efca1917fc8b0456a77890b3fadfd1ff2a
Author: Matvey Vasenin <vaseninm@gmail.com>
Date:   Thu Nov 3 23:42:15 2011 +0400
 
    .htaccess забыл
 
commit b3c5797a3717b250e268874edfb0c21280354e4e
Author: Matvey Vasenin <vaseninm@gmail.com>
Date:   Thu Nov 3 19:26:38 2011 +0400
 
    Исправил ошибочку. Временный файл удалил.
 
commit a60f372da641e77d77b09976a837c963c717eb20
Author: Matvey Vasenin <vaseninm@gmail.com>
Date:   Thu Nov 3 19:21:56 2011 +0400
 
    Залили исходники
 
Записан


цска ебаное гавно.
adw0rd    ↓ 
07 Ноябрь, 2011, 05:30:18 , спустя 28 минут 33 секунды
НЕ ХУЕТА! ХУЕТА!

эдво
Группа: в ухо

Карма: не нужна
Сообщений: 17632
Сила слова: 1.67

git co master
git: 'co' is not a git command. See 'git --help'.
:)))
будь человеком, юзай алиасы, вот например мои:
Text

 
merge = merge --no-ff
 
st = status
ci = commit
co = checkout
 
br = branch
ba = branch -a -v -v
bs = !git-branch-status
bsi = !git-branch-status -i
 
d = diff -C
ds = diff -C --stat
dsp = diff -C --stat -p
dw = diff -C --color-words
df = diff --staged
 
l = log -C --decorate
l2 = log --name-status
ls = log -C --stat --decorate
lsp = log -C --stat -p --decorate
lg = log --graph '--pretty=tformat:%Cblue%h%Creset %Cgreen%ar%Creset %Cblue%d%Creset %s'
lga = log --graph '--pretty=tformat:%Cblue%h%Creset %Cgreen%ar%Creset %Cblue%d%Creset %s' --all
l19 = log --graph '--pretty=tformat:%Cblue%h%Creset %Cgreen%ar%Creset %Cblue%d%Creset %s' --all -19
# для сложных ветвлений
lsd = log --graph '--pretty=tformat:%Cblue%h%Creset %Cgreen%ar%Creset %Cblue%d%Creset %s' --all --simplify-by-decoration
 
ru = remote update
sb = show-branch --sha1-name
ls-del = ls-files -d
ls-mod = ls-files -m # включая удалённые файлы
ls-new = ls-files --exclude-standard -o
ls-ign = ls-files --exclude-standard -o -i
 
ka = !gitk --all
kdo = !gitk --date-order
kado = !gitk --all --date-order
kasd = !gitk --all --simplify-by-decoration
 
Спустя 1 минуту 16 секунд добавил
Вот чекаут комментс
ну теперь сделай там изменеия, git ci -am "Каммент"
и снова выполни git log для comments
Записан

Python, Django, Git, Emacs, Nginx, MySQL, SphinxSearch, FreeBSD/Linux
Мой блог * Кинсбург * Либург * Я на GitHub
SpartakuS    ↓ 
07 Ноябрь, 2011, 06:53:07 , спустя 1 час 22 минуты 49 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 32
Сообщений: 2444
Сила слова: 1.31

будь человеком, юзай алиасы, вот например мои:
посмотрим чуть позже. Пока с оригинальным поработаю, а уж потом буду жизнь упрощать. Спасибо за алиасы. Буду разбираться.
Я просто не хочу делать промежуточные коммиты доступными для общего доступа в гитхабе. При этом я хочу, что бы на гитхабе появилась ветка с промежуточными коммитами. Я так понимаю надо использовать модификатор a при промежу коммите в ветку. А при комите всюду просто -m?
Записан


цска ебаное гавно.
adw0rd    ↓ 
09 Ноябрь, 2011, 01:20:13 , спустя 1 день 6 часов 27 минут 6 секунд
НЕ ХУЕТА! ХУЕТА!

эдво
Группа: в ухо

Карма: не нужна
Сообщений: 17632
Сила слова: 1.67

Я просто не хочу делать промежуточные коммиты доступными для общего доступа в гитхабе.
так не пушай, в чем проблемы..
Спустя 4 минуты 34 секунды добавил
Я так понимаю надо использовать модификатор a при промежу коммите в ветку. А при комите всюду просто -m?

Text
git commit -a
это вместо
Text
git add . && git commit
Text
git commit -m
это для ввода инлайн-сообщения к коммиту:
Text
git commit -m "Сообщение к коммиту"

Смотри man git-commit
 
       -a, --all
           Tell the command to automatically stage files that have been modified and deleted, but new files you have
           not told git about are not affected.
 

       -m <msg>, --message=<msg>
           Use the given <msg> as the commit message.
Спустя 2 минуты 47 секунд добавил
Я просто не хочу делать промежуточные коммиты доступными для общего доступа в гитхабе. При этом я хочу, что бы на гитхабе появилась ветка с промежуточными коммитами.
Короче, git не решает задачи с пермишенами, на это есть gitosis и т.д., посмотри есть ли такая возможность у github, я не в курсе.
Записан

Python, Django, Git, Emacs, Nginx, MySQL, SphinxSearch, FreeBSD/Linux
Мой блог * Кинсбург * Либург * Я на GitHub
adw0rd    ↓ 
09 Ноябрь, 2011, 01:25:46 , спустя 5 минут 33 секунды
НЕ ХУЕТА! ХУЕТА!

эдво
Группа: в ухо

Карма: не нужна
Сообщений: 17632
Сила слова: 1.67

Надо задаться вопросом: "зачем мне ветка на гитхабе, которая нужна только мне и я не хочу чтобы её кто-то видел другой".
Если ответ "хочу чтобы Вася, мой хороший друг, тоже её юзал", то тогда пушай в васю, а не в гитхаб и вот тебе солюшен.
 
git co -b comments
git ci -am "My message"
>  и вместо
git push origin comments
>  юзай
git push vasya comments
 
но предварительно создай васю в .git/config, либо юзай полный путь:
git push username@vasya.host:ourproject.git comments
Записан

Python, Django, Git, Emacs, Nginx, MySQL, SphinxSearch, FreeBSD/Linux
Мой блог * Кинсбург * Либург * Я на GitHub
SpartakuS    ↓ 
09 Ноябрь, 2011, 05:29:47 , спустя 4 часа 4 минуты 1 секунду
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 32
Сообщений: 2444
Сила слова: 1.31

adw0rd, понятно это.
Но про ветки невидимые коммиты ты меня не совем понял. Мне похер какие там дополнительные ветки на гитхабе будут. Мне главное, что бы человек мог скачать любой коммит и у него все работало. Но не запишутся ли коммиты от ветки при слиянии?
Спустя 52 секунды добавил
Хотя на самом деле это заморочка какая то моя) Спасибо.
Записан


цска ебаное гавно.
Страниц: [1]
Печать
 

Перейти в:  

Этот топик скрыли: NRG