Ubuntu Linux环境下git的安装与使用

来源:互联网 发布:gg是什么意思网络用语 编辑:程序博客网 时间:2024/04/20 08:56

简介

GIt 相当于一个远程仓库,不当可以自动帮你记录每次文件的修改,也可以将文件分享个别人一起写作编辑;
不再需要自己管理一堆类似的文件,也不需要把文件传来传去,而且可以记录每次文件的改动,麻麻再也不用担心我的报告丢掉啦!

Git的安装

ctrl+alt+t快捷键打开terminal终端

$ sudo apt-get install git

然后对git进行配置,输入

$ git config --global user.name "你的用户名"$ git config --global user.email "你的邮箱"

注意git config命令的–global参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。
然后输入

$ git

如果出现以下内容,就说明安装成功啦
这里写图片描述

GIT的使用

申请github账户,并创建repository

在https://github.com/上申请github账户,我的用户名是tiger-BeA,并创建了名为ES2016_14353147的repository

本地生成密钥对

为什么GitHub需要SSH Key呢?因为GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送。

生成新的密钥

$ ssh-keygen -t rsa -C"你的邮箱"

执行这句代码后,不管出来什么都是一路enter键就好

然后来查看生成的密钥对

$ cat  ~/.ssh/id_rsa.pub

把生成的密钥全部复制下来

设置github上的公钥

  1. 登陆github后,点击右上角的setting

    这里写图片描述

  2. 进入SSH and GPG keys添加新的公钥

    这里写图片描述

  3. 设置新密钥的内容

    这里写图片描述

    然后点击add ssh key
    设置好之后我们用下面命令测试

$ ssh -T git@github.com

若显示信息如下,则说明设置成功了!

Hi tiger-BeA! You’ve successfully authenticated, but GitHub does not provide shell access.

创建本地项目

cd进入你想要的一个目录下,创建一个新的空文件夹,该文件夹与github上的repository名字相同,并cd进入该文件夹

$ mkdir ES2016_14353147$ cd ES2016_14353147

git初始化新仓库

通过git init将这个目录变成git可以管理的仓库

$ git init

结果为

Reinitialized existing Git repository in 本地项目的路径/.git/
git将仓库建好之后,告诉你这是一个空的仓库,并且在<本地目录的路径>下多了一个.git'的目录,这个目录是Git来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给破坏了。
如果你没有看到
.git`目录,那是因为这个目录是默认隐藏的,用下面命令就可以看见

$ ls -ah

添加远程库

现在我们有了本地仓库,github仓库,我们需要把这两个仓库关联起来,然后把本地仓库的内容推送到github仓库中

这里我们有两个选择定义远程服务器,githttp协议方法

其中使用git协议,然后使用ssh密钥,可以省去每次都输密码

  1. 方法一: 使用http协议定义远程服务器别名为origin

    $ git remote add origin https://github.com/你的用户名/你的repository名字.git
  2. 方法二: 使用git协议定义远程服务器别名为origin

    $ git remote add origin git@github.com:你的用户名/你的repository名字.git
  3. 查看你当前remote url

    $ git remote -v

    出来结果

    origin https://github.com/toughhou/etl.git (fetch)
    origin https://github.com/toughhou/etl.git (push)

    就是成功定义了,之后我们可以直接用origin来连接对应的仓库

文件的提交

  1. 需要把你想上传的文件放到本地仓库的目录下,将文件添加到本地仓库

    $ git add 文件名

    结果没有任何显示就表示成功

  2. 将文件提交到本地仓库

    $ git commit -m "你想对该版本提交的备注信息"

    出现大概下面的结果

    [master (root-commit) cb926e7] wrote a readme file 1 file changed, 2 insertions(+) create mode 100644 readme.txt

  3. 将文件提交到远程仓库

    $ git push -u origin master

    大概出现下面的结果表示成功(若使用http协议则还需要输入你的用户名和密码)

    Counting objects: 5, done.
    Compressing objects: 100% (2/2), done.
    Writing objects: 100% (3/3), 277 bytes | 0 bytes/s, done.
    Total 3 (delta 1), reused 0 (delta 0)
    remote: Resolving deltas: 100% (1/1), completed with 1 local objects.
    To https://github.com/tiger-BeA/ES2016_14353147.git
    96dab28..a070661 master -> master
    Branch master set up to track remote branch master from origin.

    push完成之后,登陆你的gitup查看,发现文件已经同步上去

    这里写图片描述

    这里可以看你提交的具体信息

    这里写图片描述

git版本的回退

```$ git reset --hard commit_id```commit_id的取值有1) HEAD表示当前版本2) 通过以下命令获取
$ git log     查看提交历史->回退到过去哪个版本$ git reflog  查看命令历史->回到未来的哪个版本

至此大功告成!

0 0