Loading...
petyo.mitkov avatar petyo.mitkov 13 Точки

[Useful Info] QA Fundamental - Git Bash - Лесният начин

Здравейте,

Понеже колегите в това число и аз имахме малко затруднения с Git Bash ето на kратко нещo за улеснение в няколко последователни стъпки или иначе казано как става фокуса с Git Bash и GitHub версии, промени и тн.

Виждате и точно какво се случва след командите при промяна на име на файл в примера по-долу.

И така:

  1. Инсталирате Git
  2. Отивате в GitHub и форквате едно Репо
  3. Влизате в клонираното Репо, което не е оригинала, а вече на вашия профил в GitHub и копирате URL-а от браузъра.
  4. Създавате една папка където и да е и влизате в нея
  5. Десен бутон на мишката и посочвате Git Bash Here
  6. После въвеждате командите по-долу, следете коментарите на бг срещу  тях са командите, които въвеждате.

 

lenovo@idea-PC MINGW64 ~/Desktop/456 (master)

$ git init                    //инициализирате Git текущата папка

Initialized empty Git repository in C:/Users/lenovo/Desktop/456/.git/

lenovo@idea-PC MINGW64 ~/Desktop/456 (master)

$ git clone https://github.com/petyoMitkov/demoGit //командата за клониране и URL Paste

Cloning into 'demoGit'...

remote: Counting objects: 65, done.

remote: Total 65 (delta 0), reused 0 (delta 0), pack-reused 65

Unpacking objects: 100% (65/65), done.

Checking connectivity... done.

 

lenovo@idea-PC MINGW64 ~/Desktop/456 (master)

$ ls                         //показва акво има в папкат

demoGit/

 

lenovo@idea-PC MINGW64 ~/Desktop/456 (master)

$ cd demoGit/                 //влизаме в клонираното Репо на нашето PC

 

lenovo@idea-PC MINGW64 ~/Desktop/456/demoGit (master)

$ gitstatus                  //показва статуса

bash: gitstatus: command not found

//Тук по нормалния начин отивате в папката и променяте името на файл, после се връщате в GitBash и продължавате с командите, както следва.

lenovo@idea-PC MINGW64 ~/Desktop/456/demoGit (master)

$ git status        //пак проверяваме статуса и показва, че има промени, при смяна на име показва като изтрит файл

On branch master

Your branch is up-to-date with 'origin/master'.

Changes not staged for commit:

  (use "git add/rm <file>..." to update what will be committed)

  (use "git checkout -- <file>..." to discard changes in working directory)

        deleted:    pom.xml

Untracked files:

  (use "git add <file>..." to include in what will be committed)

        uytuytuy.xml

no changes added to commit (use "git add" and/or "git commit -a")

lenovo@idea-PC MINGW64 ~/Desktop/456/demoGit (master)

$ git add –A               //пишете това заклинание –А слято,на мен там ми беше грешката

 

lenovo@idea-PC MINGW64 ~/Desktop/456/demoGit (master)

$ git status               //от това май няма нужда пак и май излезе автоматично или   съм го въвел за проба

On branch master

Your branch is up-to-date with 'origin/master'.

Changes to be committed:

  (use "git reset HEAD <file>..." to unstage)

        renamed:    pom.xml -> uytuytuy.xml

lenovo@idea-PC MINGW64 ~/Desktop/456/demoGit (master)

$ git commit -m "pppppp"     //къмитваме и пишем съобщение за къмита . Някъде ще иска парола и потребител за  GitHub въвежда се еднократно

[master d572e36] pppppp

 1 file changed, 0 insertions(+), 0 deletions(-)

 rename pom.xml => uytuytuy.xml (100%)

 

lenovo@idea-PC MINGW64 ~/Desktop/456/demoGit (master)

$ git push                 //пращаме в космоса, демек в GitHub

Counting objects: 2, done.

Delta compression using up to 2 threads.

Compressing objects: 100% (2/2), done.

Writing objects: 100% (2/2), 263 bytes | 0 bytes/s, done.

Total 2 (delta 1), reused 0 (delta 0)

To https://github.com/petyoMitkov/demoGit

   896b733..d572e36  master -> master

lenovo@idea-PC MINGW64 ~/Desktop/456/demoGit (master)

$

//Готово промените вече са отразени в GitHub ;)

 

Надявам се примера да е бил полезен и да ви е улеснил.

 

Поздрави

 

 

 

Тагове:
7
QA Fundamentals 07/04/2016 22:50:31

Супер колега, че си обобщил направеното с по-прости думи.  Браво ! 

А сеге след като сте адднали и променили файл. Променете името му и вижте какво се случва.

Нали трябва да разцъкваме .... :)

При мен промененото име го приема с две операции : delete  и add 

Gerganka@GeRi_PC MINGW64 ~/Desktop/Web-Services-and-Cloud (master)
$ git status
On branch master
Your branch is up-to-date with 'origin/master'.
Changes not staged for commit:
  (use "git add/rm <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

        deleted:    SimpleNewFileee.txt

Untracked files:
  (use "git add <file>..." to include in what will be committed)

        NameChanged.txt

no changes added to commit (use "git add" and/or "git commit -a")
 

Следва git add командата  и git status :

Gerganka@GeRi_PC MINGW64 ~/Desktop/Web-Services-and-Cloud (master)
$ git add -A

Gerganka@GeRi_PC MINGW64 ~/Desktop/Web-Services-and-Cloud (master)
$ git status
On branch master
Your branch is up-to-date with 'origin/master'.
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

        renamed:    SimpleNewFileee.txt -> NameChanged.txt
 

Следват git commit и git push. Рефрешваме github Репо-то ни и воала - Името е сменено. 

Но, репото ми ако виждате е друго, защото с DemoGit ми изкара следната грешка:

Gerganka@GeRi_PC MINGW64 ~/demoGit (master)
$ notepad oneNewFile.txt

Gerganka@GeRi_PC MINGW64 ~/demoGit (master)
$ git add oneNewFile.txt
fatal: Unable to create 'C:/Users/Gerganka/demoGit/.git/index.lock': File exists.

If no other git process is currently running, this probably means a
git process crashed in this repository earlier. Make sure no other git
process is running and remove the file manually to continue.

 

Някаква идеи как да се справя с този проблем ??? 

Мерси 

 

 

0
petyo.mitkov avatar petyo.mitkov 13 Точки

Привет, 

примера, който съм качил е точно за смяна на името. При мен нямаше проблема който споделяш.. Опитай по стария начин, щом има проблем всично от начало. Може да е станало някое разминаване. Както при мен беше проблема, че пишех git add - A  а не git add -A  (слято тирето и А). И не ставаше и неставаше. Друго не знам какво да те посъветвам. 

Поздрави и успех

0
07/04/2016 22:04:43

А и за тези , които нямат Issue меню в форкнатите репо-та . 

Моля отворете репото , кликнете на Settings (най-отдясно на лентата code, pull,wiki .....)

След като влезнете в настройките , сложете отметка на Issues. 

Thanks God, for google :):).

 

2

Леле не съм видяла , че и твоят пример е с ринейм. 

Извинете ме колеги 

0
RoYaL avatar RoYaL Trainer 6849 Точки

Супер :))) Добро обяснение, смятам че ще е полезно на колегите в курса.

Направих и едно документче - упражнението в клас (без процедурата по Fork), което е разписано с картинки. Качих го в инстанцията на курса.

https://softuni.bg/downloads/svn/qa-fundamentals/March-2016/04.1.%20QA-Fundamentals-SourceControlSystems-Exercise.docx

2
07/04/2016 22:19:40
boiko.lazarov avatar boiko.lazarov 14 Точки

Здравейте, някой има ли решение на това:

Regards

0
RoYaL avatar RoYaL Trainer 6849 Точки

Най ме притеснява точката накрая. Подозирам, че трябва да има интервал преди нея.

Другото е ssh-a. Аз по скоро бих препоръчал на първо време да използвате HTTPS. Т.е. копирайте urlите от адрес бара.

0
boiko.lazarov avatar boiko.lazarov 14 Точки

@RoYaL - Споменатите неща ги пробвах - резултатът е същия. Имам проблем с някаква аутентикация, може би.

 

Regards

0
08/04/2016 01:12:43
birkoff88 avatar birkoff88 -7 Точки

А сега си напишете едно bash скриптче(нали сте девове), за да ви се върши цялата работа автоматично... :)

0
RoYaL avatar RoYaL Trainer 6849 Точки

Всъщност курсът е Quality Assurance, не се предполага участниците, че са "девове" :)

1
Hbahnev avatar Hbahnev 2 Точки

Едно въпросче off-topic, защо не ползваме програми като GitEye, SourceTree и т.н.? Не са ли доста по лесни за работа с Git?

0
RoYaL avatar RoYaL Trainer 6849 Точки

Може да се каже по-лесни. Има най-голям шанс да попаднете на работа в която ще ползвате или конзолата или плъгин за IDE-то и много по-малък шанс да използвате някой друг туул.

1
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.