Difference between revisions of "GIT client"
Line 51: | Line 51: | ||
To apply settings for particular repository (recommended) | To apply settings for particular repository (recommended) | ||
+ | |||
+ | |||
+ | By doing so your credentials will never be asked again. | ||
+ | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
+ | |||
+ | ############ | ||
+ | # Declare your identity | ||
+ | ############ | ||
+ | # Go at the root of your GIT repo (= your local clone) | ||
+ | git config user.name "guihome-diaz" | ||
+ | git config user.email "myemail@mydomain.com" | ||
+ | |||
+ | |||
+ | ############ | ||
+ | # Save credentials | ||
+ | ############ | ||
# settings will be saved in ~/.git-credentials | # settings will be saved in ~/.git-credentials | ||
$ git config credential.helper store | $ git config credential.helper store | ||
Line 60: | Line 76: | ||
Username: <type your username> | Username: <type your username> | ||
Password: <type your password> | Password: <type your password> | ||
− | |||
− | |||
− | |||
− | |||
</synataxhighlight> | </synataxhighlight> | ||
Revision as of 15:40, 22 November 2017
Contents
References
- Official website: http://git-scm.com
- Help page: http://git-scm.com/book/en/
- GitHub wiki page: https://help.github.com/articles/set-up-git/
- very good tutorial: http://rogerdudler.github.io/git-guide/
Installation
apt-get install libcurl4-gnutls-dev libexpat1-dev gettext libz-dev libssl-dev
apt-get install git git-doc git-gui
If you want to use GIT as your local SVN client:
apt-get install git-svn
If you want to browse the GIT repository in a local browser:
apt-get install gitweb
Configuration
Run the following commands a standard user, not root!
GLOBAL configuration
To apply settings for *every* projects:
git config --global user.name "guillaume.diaz"
git config --global user.email johndoe@example.com
git config --global core.editor vim
Repository configuration
To apply settings for particular repository (recommended)
By doing so your credentials will never be asked again.
############
# Declare your identity
############
# Go at the root of your GIT repo (= your local clone)
git config user.name "guihome-diaz"
git config user.email "myemail@mydomain.com"
############
# Save credentials
############
# settings will be saved in ~/.git-credentials
$ git config credential.helper store
# adjust for each repostiory
$ git push http://example.com/repo.git
Username: <type your username>
Password: <type your password>
</synataxhighlight>
source: https://git-scm.com/docs/git-credential-store
=Register SSH key=
If you'd like to register a SSH key to use with GIT, see the excellent GitHub documentation: https://help.github.com/articles/generating-ssh-keys/
=Get project files=
Run the following commands a '''standard user''', not root!
* Clone an existing project
<syntaxhighlight lang="bash">
git clone [url] [targetFolder]
Note that you can use HTTPS, SSH or SVN URLs.
- Perform operation using Git GUI
cd [my GIT repo]
git gui
Update files
- Check files status
git status
- Update files on local HEAD
git pull
Commit files
- Add file
git add [file]
- Commit
git commit -m "my comment"
- Send changes to the server
git push
Ignore files in GIT
For a complete list of files see: https://github.com/github/gitignore
Here is my .gitignore file.
Create a file called .gitignore to the root of your GIT repo.
cd [my GIT repo]
vim .gitignore
Insert the following code:
## generic files to ignore
*~
*.lock
*.DS_Store
*.swp
*.out
*.tmp
*.temp
build/
#java specific
*.class
target/
#maven
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next
release.properties
#netbeans ignore personal stuff
nbproject/private/
#eclipse specifics
settings/
.project
.classpath
.checkstyle
#intelliJ
.idea/
#gradle
.gradle/
gradle-app.setting
You can find more example on https://github.com/github/gitignore