Başını əvvəlki yerə qaytarmaq üçün necə? (Ayrı baş)

Gitdə başqa bir şöbəyə birləşərək birləşərək və daha sonra HEAD'ı əvvəlki yerə sıfırlayaraq:

 git reset origin/master 

Amma bundan çıxmaq lazımdır. Başını əvvəlki yerə qaytarmaq üçün necə?

Mən hərəkət 23b6772 bir SHA1 frag ( 23b6772 ) var.
Bu təsbitə necə geri dönə bilərəm?

90
30 дек. timpone 30 dek seçin. 2015-12-30 00:53 '16 'da 0:53 ' da 0 2015-12-30 00:53
@ 5 cavab

Cavab verməkdən öncə, bir neçə fon əlavə edək, HEAD nə olduğunu izah edin.

First of all what is HEAD?

HEAD sadəcə mövcud işdə sonuncu tövsiyənin (sonuncu) bir keçididir.
Heç bir zamanda yalnız bir HEAD ola bilər. ( git worktree istisna olmaqla)

HEAD məzmunu .git/HEAD saxlanılır və .git/HEAD 40 bayt SHA-1 ehtiva edir.


detached HEAD

Sonuncu törətməni istifadə etmirsinizsə, HEAD tarixdə əvvəlki törətməni göstərir, onu detached HEAD deyir.

2019

30 дек. Cavab CodeWizard 30 dekabrda verilir. 2015-12-30 00:56 '16 'da 0:56 2015-12-30 00:56

Burada çox sadə və yaddaqalan bir yanaşma var. 2 şərtləri yoxlayın və əmr edin.

Əgər

bir "ayrı baş"
(məsələn, git status növü, siz HEAD detached at <commit_id> görürsünüz)

Mövcud şöbə sizin ehtiyaclarınıza cavab verir
(yəni, git branch -v növü git branch -v , git branch -v adını davam etdirmək istədiyiniz işi təmsil edən əlaqəli mesajlar ilə görürsünüz)

Sonra

yalnız şöbəni yoxlayın (məsələn, git checkout <branch_name> , Switched to branch <branch_name> ).

Nəticələr

İndi işinizi əvvəlki kimi əlavə etməyə və davam etdirməyə davam edə bilərsiniz; dəyişikliklər <branch_name> üzərində izləniləcəkdir.

Xatırlayın ki, HEAD bağlantısı kəsildiğinde işinizi xilas etsəniz, əksər hallarda bu iş avtomatik olaraq yuxarıda təsvir edilən prosesdə birləşdiriləcəkdir. Birləşmə qarşıdurma mesajı görürsünüzsə, vahimə etməyin. Münaqişənin həlli və birləşməni tamamlamaq üçün sadə addımlar olan bəzi böyük təlimlər var.

9
09 авг. Cavab Kay V 09 aug verilir. 2016-08-09 17:10 '16 saat 17:10 'da 2016-08-09 17:10

Sual oxumaq olar:

23b677223b6772git reset origin/master (mən squash istəmişəm) 23b6772 . İndi 23b6772 necə 23b6772 ?

Doğrudan cavab: git reset 23b6772

Amma bu məsələyə qaçdım, çünki mənə hər dəfə bir əvvəlki HEAD müraciət etmək istəmişəm və (hər hansı bir stenoqrafiya olub olmadığını) görmək üçün Googling yazdığımda (kopyala və yapışdırıb) yazmağı xahiş etdim.

Orada çıxır!

git reset - (və ya mənim git cherry-pick - )

Bu arada, cd - ilə eyni idi cd - əvvəlki cari qovluğa qayıtmaq üçün * nix! Yəni tələsik, bir daşla iki şeyi öyrəndim.

3
22 июля '17 в 7:46 2017-07-22 07:46 Cavab antak tərəfindən 22 İyulda '17 saat 7:46 2017-07-22 07:46 'də verilir

Bunu etmək üçün

 git reset 23b6772 

Doğru mövqedən olmadığınızı görmək üçün:

 git status 

Bir şey görəcəksiniz

Magistral şöbəsində filialınız "mənşə / usta" nın arxasında 17 qəpikdir və tezliklə ötürülə bilər.

Sonra HEADı hazırkı öhdəliyə düzəldin:

 git push --force 
3
10 окт. Cavab 10 octuna verilir . 2018-10-10 16:14 '18 saat 04:14 'da 2018-10-10 16:14

git checkout commit_id çalıştırdığınızda, HEAD 13ca5593d(say commit-id) bağlantısını 13ca5593d(say commit-id) ve şube daha uzun müddət davam edəcəkdir.

Əvvəlki yerə geri qayıdın və komandanın addımını müdrik bir şəkildə yerinə yetirin - a) go gitməyin origin_name_name (say master) b) git checkout branch_name c) go pull origin_name_plant_name

Uzaq havadakı yenilənmiş tövsiyələrlə əvvəlki yerə qayıdacaqsınız.

0
18 янв. Cavab 18 yanvarda Deepak Kumar tərəfindən verilir . 2019-01-18 12:15 '19 saat 12:15 'də 2019-01-18 12:15

haqqında digər suallar və ya bir sual