GitLab CI
Contents
[hide]Getting a Git Repository
Cloning an Existing Repository
$ git clone https://github.com/rasimsen/NodeJs-MongoDb.git
Initializing a Repository in an Existing Directory
$ cd /Users/user/my_project
$ git init
$ git add *.c
$ git add LICENSE
$ git commit -m 'initial project version'
$ git push
git fetch origin
git checkout master
git merge --ff-only origin/master
git checkout rasim-tg-XXX
git merge --no-ff origin/master
git checkout -b rasim-new_branch #creates new branch
git stash #get backups for current branch
git stash pop #get changes from back-ups
Git Terminal Commands
——————————————————————————————
506 git status
507 git pull —> update from remote repository - Fetch and merge changes on the remote server to your working directory
508 git status
509 git checkout -- application.yaml ——————> undo
510 git pull —> update from remote repository - Fetch and merge changes on the remote server to your working directory
511 git status
512 git checkout -b rasim-log-xxx ————> (Rasim-log-xxx) isimli branch oluşturur (local)
513 git status
514 git add XXX.java YYY.xml ——> yeni dosyalari repository ekler
515 git status
Basic Git commands
Here is a list of some basic Git commands to get you going with Git.
Git task | Notes | Git commands |
---|---|---|
Tell Git who you are | Configure the author name and email address to be used with your commits. Note that Git strips some characters (for example trailing periods) from |
git config --global user.name "Sam Smith"
|
Create a new local repository | git init |
|
Check out a repository | Create a working copy of a local repository: | git clone /path/to/repository |
For a remote server, use: | git clone username@host:/path/to/repository |
|
Add files | Add one or more files to staging (index): | git add <filename> git add * |
Commit | Commit changes to head (but not yet to the remote repository): | git commit -m "Commit message" |
Commit any files you've added with git add , and also commit any files you've changed since then: |
git commit -a |
|
Push | Send changes to the master branch of your remote repository: | git push origin master |
Status | List the files you've changed and those you still need to add or commit: | git status |
Connect to a remote repository | If you haven't connected your local repository to a remote server, add the server to be able to push to it: | git remote add origin <server> |
List all currently configured remote repositories: | git remote -v |
|
Branches | Create a new branch and switch to it: | git checkout -b <branchname> |
Switch from one branch to another: | git checkout <branchname> |
|
List all the branches in your repo, and also tell you what branch you're currently in: | git branch |
|
Delete the feature branch: | git branch -d <branchname> |
|
Push the branch to your remote repository, so others can use it: | git push origin <branchname> |
|
Push all branches to your remote repository: | git push --all origin |
|
Delete a branch on your remote repository: | git push origin :<branchname> |
|
Update from the remote repository | Fetch and merge changes on the remote server to your working directory: | git pull |
To merge a different branch into your active branch: | git merge <branchname> |
|
View all the merge conflicts: View the conflicts against the base file: Preview changes, before merging: |
git diff
git diff <sourcebranch> <targetbranch> |
|
After you have manually resolved any conflicts, you mark the changed file: | git add <filename> |
|
Tags | You can use tagging to mark a significant changeset, such as a release: | git tag 1.0.0 <commitID> |
CommitId is the leading characters of the changeset ID, up to 10, but must be unique. Get the ID using: | git log |
|
Push all tags to remote repository: | git push --tags origin |
|
Undo local changes | If you mess up, you can replace the changes in your working tree with the last content in head: Changes already added to the index, as well as new files, will be kept. |
git checkout -- <filename> |
Instead, to drop all your local changes and commits, fetch the latest history from the server and point your local master branch at it, do this: | git fetch origin git reset --hard origin/master |
|
Search | Search the working directory for foo() : |
git grep "foo()" |
Windows - GibHub Setting
Git Bash
The Git installation package comes with SSH. Using Git Bash, which is the Git command line tool, you can generate SSH key pairs. Git Bash has an SSH client that enables you to connect to and interact with Triton containers on Windows.
To install Git:
- (Download and initiate the Git installer](https://git-scm.com/download/win).
- When prompted, accept the default components by clicking Next.
- Choose the default text editor. If you have Notepad++ installed, select Notepad++ and click Next.
- Select to Use Git from the Windows Command Prompt and click Next.
- Select to Use OpenSSL library and click Next.
- Select to Checkout Windows-style, commit Unix-style line endings and click Next.
- Select to Use MinTTY (The default terminal of mYSYS2) and click Next.
- Accept the default extra option configuration by clicking Install.
- When the installation completes, you may need to restart Windows.
Launching GitBash
To open Git Bash, we recommend launching the application from the Windows command prompt:
- In Windows, press Start+R to launch the Run dialog.
- Type C:\Program Files\Git\bin\bash.exe and press Enter.
Generating SSH keys
First, create the SSH directory and then generate the SSH key pair.
One assumption is that the Windows profile you are using is set up with administrative privileges. Given this, you will be creating the SSH directory at the root of your profile, for example:
C:\Users\rasim
- At the Git Bash command line, change into your root directory and type.
mkdir .ssh
- Change into the .ssh directory C:\Users\rasim\.ssh
- To create the keys, type:
ssh-keygen.exe
- When prompted for a password, type apassword to complete the process. When finished, the output looks similar to:
Ssh-keygen.exe
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/rasim/.ssh/id_rsa): /c/Users/rasim/.ssh/
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/rasim/.ssh/
Your public key has been saved in /c/Users/rasim/.ssh/
The key fingerprint is:
SHA256:jieniOIn20935n0awtn04n002HqEIOnTIOnevHzaI5nak rasim@oasissofttech.com
The key's randomart image is:
+---[RSA 2048]----+
|*= =+. |
|O*=.B |
|+*o* + |
|o +o. . |
| ooo + S |
| .o.ooo* o |
| .+o+*oo . |
| .=+.. |
| Eo |
+----[SHA256]-----+
$ dir .ssh
id_rsa id_rsa.pub
Uploading an SSH key
To upload the public SSH key to your Triton account:
- Open GitHub service portal, select Account to open the Account Summary page.
- From the SSH section, select Import Public Key.
- Enter a Key Name. Although naming a key is optional, labels are a best practice for managing multiple SSH keys.
- Add your public SSH key.
When GitHub finishes the adding or uploading process, the public SSH key appears in the list of SSH keys.