10 naprednih tehnik Git - KDnuggets

10 naprednih tehnik Git – KDnuggets

Izvorno vozlišče: 3083811

10 naprednih tehnik Git
Slika avtorja
 

Ever wonder what you could do to look like a pro in front of your manager when using Git? In this post, we’ll learn about 10 advanced Git techniques and shortcuts that will make you more efficient at versioning, maintaining, and sharing code.

You likely already know the basics of committing, pushing, pulling, and branching with Git. But there are many lesser-known commands and features that can level up your skills. After reading this, you’ll have a few slick tricks up your sleeve to impress coworkers with your Git proficiency.

Datoteke ste dodali in potrdili na ta način večkrat, a kaj, če vam povem, da je to mogoče storiti v eni vrstici z zastavico `-am`? 

$ git add .
$ git commit -m "new project"

 

Namesto tega poskusite to in dodalo bo spremembe datoteke ter ustvarilo objavo s sporočilom. 

$ git commit -am "new project"

 

[master 17d7675] new project
4 files changed, 2 insertions(+), 1 deletion(-)

 

You can rename your current commit message using the `–amend` flag and write the new message. This will help you with accidental messages.

$ git commit --amend -m "Love"

 

[master 7b7f891] Love
Date: Mon Jan 22 17:57:58 2024 +0500
4 files changed, 2 insertions(+), 1 deletion(-)

 

You can include additional changes to the current commit before pushing it to the remote repository. To do so, you need to add the file changes and then commit using the `–amend` flag. To retain the previous commit message, simply use the `–no-edit` flag.

$ git add . 
$ git commit --amend --no-edit

 

[master f425059] Love
Date: Mon Jan 22 17:57:58 2024 +0500
6 files changed, 2 insertions(+), 34 deletions(-)

If you want to push a local commit and override the remote history without dealing with resolving issues, you can use the `–force` flag. However, it’s important to note that using the force flag is not recommended and should only be used when you’re absolutely sure of what you’re doing. Keep in mind that using the force flag will rewrite the remote history.

$ git push origin master --force

 

Enumerating objects: 7, done.
Counting objects: 100% (7/7), done.
Delta compression using up to 16 threads
Compressing objects: 100% (4/4), done.
Writing objects: 100% (4/4), 357 bytes | 357.00 KiB/s, done.
Total 4 (delta 2), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (2/2), completed with 2 local objects.
To https://github.com/kingabzpro/VSCode-DataCamp.git
8f184d5..f425059  master -> master

Če želite razveljaviti objavo v Gitu, lahko uporabite ukaz `revert`. Vendar pa ta ukaz ne odstrani nobenih potrditev. Namesto tega ustvari novo obvezo, ki razveljavi spremembe, ki jih je naredila prvotna objava.

We will use the `log` with `–oneline` flag to view commit history in a shorter form. 

$ git log --oneline

 

f425059 (HEAD -> master, origin/master) Love
8f184d5 first commit

 

Za vrnitev na prejšnjo objavo uporabimo ukaz `git revert`, ki mu sledi ID objave. To ustvari novo objavo s spremembami iz prejšnje objave.

$ git revert 8f184d5

Ali želite povečati svojo produktivnost na GitHubu? Z GitHub Code Spaces lahko zdaj urejate in izvajate kodo neposredno v brskalniku. 

To access this feature, simply navigate to your favorite repository, press the period key (“.”) on your keyboard, and it will redirect you to the VSCode UI.

 

10 naprednih tehnik Git
Slika avtorja
 

You can make changes to the code and push them to your remote repository. However, if you want to run the code in the terminal, you need to run the Codespace in the cloud. The free version offers an excellent option for running your Python code in your browser. Isn’t that awesome? I just found out about it today.

 

10 naprednih tehnik Git
Slika avtorja

Ko delate na projektu, lahko dodate datoteke v uprizoritveno območje in jih nato potrdite, da shranite trenutni napredek. Vendar pa obstaja še en način za enostavno shranjevanje vašega dela z uporabo ukaza `stash`. Ko uporabite `stash`, shranite trenutni napredek, ne da bi ga dodali v uprizoritveno območje ali ga potrdili. To vam omogoča, da shranite svoj napredek in ga obnovite, kadar koli je to potrebno.

Naš trenutni napredek bomo shranili tako, da bomo zagotovili ime in ga shranili. 

$ git stash save new-idea

 

Saved working directory and index state On master: new-idea

 

Ogledate si lahko svoj seznam zalog in zabeležite ustrezen indeks, da ga pridobite.

$ git stash list

 

stash@{0}: On master: new-idea

 

Our stash of “new ideas” is saved at index 0. To retrieve it, use this command:

$ git stash apply 0

 

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

You have the option to rename your default branch name to something more appropriate. In this case, we will rename “master” to “main”. 

$ git branch -M main

 

10 naprednih tehnik Git
 

Spremembe lahko preverite z naslednjim ukazom: 

$ git status

 

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

Če si želite ogledati podrobno zgodovino vseh potrditev, opravljenih v trenutnem repozitoriju, lahko uporabite ukaz `git log`. Vendar je izpis lahko težko brati. Da bo bolj berljiv, lahko uporabite zastavice `graph`, `decorate` in `oneline`. To bo prikazalo spremembe v več vejah in kako se združujejo.

$ git log --graph --decorate --oneline

 

10 naprednih tehnik Git

Večkrat sem preklopil na novo vejo in pozabil ime prejšnje veje. Posledično sem moral za ogled seznama imen vej uporabiti ukaz `git branch -a`. Vendar pa obstaja enostavnejši način za vrnitev v izvirno vejo z uporabo pomišljaja »-« za ukazom `git checkout`.

Najprej bomo ustvarili novo Git vejo »neo«.

$ git branch neo

 

Prešli bomo na vejo “neo”.

$ git checkout neo

 

Switched to branch 'neo'

 

Za vrnitev v prvotno vejo bomo uporabili naslednji ukaz:

$ git checkout -

 

Switched to branch 'main'

We have learned about overriding the remote repository. Let’s learn how to override the local repository using the remote repository.

Za pridobitev najnovejših sprememb iz oddaljenega repozitorija bomo uporabili ukaz `fetch`. 

$ git fetch origin

 

Then, we will use the ‘reset’ command with the ‘hard’ flag to override any local changes with the remote version. Please note that this will permanently discard any local changes.

$ git reset --hard origin/master

 

HEAD is now at f425059 Love

 

Če še vedno obstajajo neizsledene datoteke, jih lahko odstranite z naslednjim ukazom:

$ git clean -df

Navdih za pisanje tega članka sem dobil po ogledu a YouTube video avtor Fireship. Ustvarjalca občudujem zaradi njegove sposobnosti, da na preprost način razloži kompleksne teme. Z upoštevanjem njegove metode sem se naučil veliko o funkcijah Git.

V tem članku smo obravnavali napredne tehnike Git, ki so ključne za podatkovne znanstvenike in programske inženirje, ki delajo na skupnem podatkovnem projektu. Poznavanje teh tehnik vam lahko pomaga preprečiti nesreče in rešiti težave veliko hitreje.

Upam, da vam je bil ta blog koristen. Sporočite mi, če želite prebrati več objav z informacijami v velikosti bajtov o pogosto uporabljenih orodjih v svetu podatkovne znanosti.
 
 

Abid Ali Awan (@1abidaliawan) je certificiran strokovnjak za podatkovne znanstvenike, ki rad gradi modele strojnega učenja. Trenutno se osredotoča na ustvarjanje vsebin in pisanje tehničnih blogov o strojnem učenju in tehnologijah podatkovne znanosti. Abid ima magisterij iz tehnološkega managementa in diplomo iz telekomunikacijskega inženiringa. Njegova vizija je zgraditi izdelek AI z uporabo grafične nevronske mreže za študente, ki se borijo z duševnimi boleznimi.

Časovni žig:

Več od KDnuggets