在Linux(Ubuntu)下配置和使用Git

下文由于本人学习时尚未精通,有许多错误,不具有参考价值。@20160223

安装Git

sudo apt-get install git

在GitHub上注册帐号

设置git用户名和邮箱

$ git config --global user.name "<YOUR NAME>"
$ git config --global user.email "<YOUR EMAIL ADDRESS>"
# 尖括号“<>”内为所需要替代的内容,需要用具体项目信息替代,替代应包含尖括号。下同。
# 第一条命令替代后为:$ git config --global user.name "HenryZivers"

SSH配置

查看是否已经存在Key

$ ll -al ~/.ssh

如果key存在则会打印类似如下信息,若不存在则继续。

> id_*.pub

如果上步中有Key则忽略此步,如果没有则创建新的SSH Key

$ ssh-keygen -t rsa -b 4096 -C "<YOUR_EMAIL@EMAIL.com>"
# 引号内输入你的邮箱

接下来将提示配置SSH Key。

第一步默认设置就好,第二部输入一个Private口令,随便输入一段你能够记住的英文就好。

Enter file in which to save the key (/Users/<USERNAME>/.ssh/id_rsa): <回车>
Enter passphrase (empty for no passphrase): <YOUR PHRASE>
Enter same passphrase again: <YOUR PHRASE>

之后将会收到创建成功的提示信息

Your identification has been saved in /home/<USERNAME>/.ssh/id_rsa.
Your public key has been saved in /home/<USERNAME>/.ssh/id_rsa.pub.
The key fingerprint is:
2e:53:b7:eb:00:ed:bc:8d:aa:c3:75:86:90:e3:87:50 <YOUR_EMAIL@EMAIL.com>
The key's randomart image is:
+--[ RSA 4096]----+
|                 |
|    E            |
|   . .           |
|  . +  .         |
|   o +..S .      |
|    o +*o. .     |
|   . ooo= .      |
|    o  o = .     |
|    .o..o.+      |
+-----------------+

将生成的SSH Key加入SSH-Agent首先确认ssh-agent服务已经启用

$ eval "$(ssh-agent -s)"

将SSH Key加入SSH-Agent

$ ssh-add ~/.ssh/id_rsa

连接Github账户首先查看生成的SSH公钥

$ cat ~/.ssh/id_rsa.pub

复制打印出的类似以下的信息,即公钥

ssh-rsa 
···
···
···= <YOUR_EMAIL@EMAIL.com>

在GitHub的任意页面点击头像,选择”setting”->”SSH Keys”->”Add SSH Key”。将上面的公钥填入输入框,Title任取。
测试连接是否成功输入以下命令

$ ssh -T git@github.com

根据提示键入之前设置的口令

<YOUR PHRASE>

返回授权成功信息即连接成功

Git基本用法

  • 创建仓库进入所需要上传文件的目录
$ cd /srv/www/<YOUR_REPO>
  • 创建git环境
$ git init
  • 创建一个本地仓库连接到GitHub
$ git remote add origin git@github.com:<GIT_USERNAME>/<YOUR_REPO>.git
#<GIT_USERNAME>为GitHub用户名,<YOUR_REPO>为要上传到的仓库
  • 克隆项目到本地进入项目需要存放的目录,例如
$ cd /srv/www
  • 使用git clone命令克隆项目到本地
$ git clone https://github.com/<GIT_USERNAME>/<YOUR_REPO>.git
  • push/pull/add/commit/fetch/merge

使用commit命令提交到本地仓库,-m参数可以填入说明信息

$ git commit -m <说明信息>

使用add命令添加文件或目录到本地仓库

$ git add <文件/目录名>

使用push命令提交更改到github仓库

$ git push origin master

使用fetch命令获取最新的版本,使用merge命令将更新的内容合并到本地分支

$ git fetch origin
$ git merge origin/master

直接拉取最新版本合并

$ git pull origin master
  • 分支管理

创建本地分支

$ git branch <分支名>

同步到GitHub

$ git push <本地仓库名>:<分支名>

切换分支

$ git checkout <分支名>

查看分支信息

$ git branch

删除分支

git branch -d <分支名>

将删除命令同步到GitHub

git push <本地仓库名>:<分支名>

Git ignore

可以使用.gitignore方式忽略不需要上传的文件,具体方法为在需要忽略的目录下创建.gitigore文件,在文件内写入需要忽略的文件/目录名

$ touch .gitignore

用vi命令编辑

$ sudo vi .gitignore

以斜杠“/”开头表示目录;

以星号“*”通配多个字符

以问号“?”通配单个字符

以方括号“[]”包含单个字符的匹配列表;

以叹号“!”表示不忽略(跟踪)匹配到的文件或目录;

例如:

/foo
# 忽略/foo目录
*.html
# 忽略所有.html文件
/bar/*
# 忽略/bar目录下的所有文件,但不忽略/bar目录本身
!/bar/setting.txt
# 接上条,在忽略/bar目录的前提下,不忽略setting.txt这个文件

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注