服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|

Ubuntu系统中Git客户端的安装与基本命令使用教程

2019-06-04 14:27来源:伯乐在线所属分类:Ubuntu

Git是当下最流行的版本控制系统,本文将为大家整理Ubuntu系统中Git客户端的安装与基本命令使用教程,需要的朋友可以参考下

安装git
 

复制代码
代码如下:

sudo apt-get install git

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

复制代码
代码如下:

git config --global user.name "Your name" 
git config --global user.email "email@XX.com"

 

创建版本库repository
首先找一个地方,创建一个空目录,然后使用git init 命令
 

复制代码
代码如下:

git init

将文件放到建好的仓库目录下使用如下命令

 

用add将文件添加到仓库 
 

复制代码
代码如下:

git add filename 

用commit告诉git, 把文件提交到仓库 

复制代码
代码如下:

git commit -m "input something "

git commit命令执行成功后会告诉你,文件被改动的情况。commit可以一次提交很多文件

 

查看仓库历史
git status命令可以让我们时刻掌握仓库当前的状态
 

复制代码
代码如下:

git status

git diff filename 可以查看该文件时如何被修改的

 

版本回退
用git log 命令查看历史记录
 

复制代码
代码如下:

git reset --hard +版本号 

其中**HEAD表示当前版本,HEAD^表示上一个版本,HEAD^^表示上上一个版本 也可写成HEAD~100上一百个版本。版本号不用全写,写前几位就行。git会自动帮你找到
用git reflog 可以查看你每一次的操作记录

 

撤销修改
使用

复制代码
代码如下:
git checkout --xxx.txt

命令git checkout -- readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况: 
一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态; 
一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。 
总之,就是让这个文件回到最近一次git commit或git add时的状态
使用git reset HEAD +filename可以把暂存区的修改撤销掉,重新放回工作区。git reset命令既可以回退版本,也可以把暂存区的修改撤销掉

 

删除文件
** 使用git rm filename**删除文件
若删错了,可用 git checkout -- filename进行恢复

查看、切换、创建和删除分支
 

复制代码
代码如下:

git br -r # 查看远程分支
git br <new_branch> # 创建新的分支
git br -v # 查看各个分支最后提交信息
git br --merged # 查看已经被合并到当前分支的分支
git br --no-merged # 查看尚未被合并到当前分支的分支
git co <branch> # 切换到某个分支
git co -b <new_branch> # 创建新的分支,并且切换过去
git co -b <new_branch> <branch> # 基于branch创建新的new_branch
git co $id # 把某次历史提交记录checkout出来,但无分支信息,切换到其他分支会自动删除
git co $id -b <new_branch> # 把某次历史提交记录checkout出来,创建成一个分支
git br -d <branch> # 删除某个分支
git br -D <branch> # 强制删除某个分支 (未被合并的分支被删除的时候需要强制)

 

分支合并和rebase
 

复制代码
代码如下:

git merge <branch> # 将branch分支合并到当前分支
git merge origin/master --no-ff # 不要Fast-Foward合并,这样可以生成merge提交
git rebase master <branch> # 将master rebase到branch,相当于:
git co <branch> && git rebase master && git co master && git merge <branch>

 

Git暂存管理
 

复制代码
代码如下:

git stash # 暂存
git stash list # 列所有stash
git stash apply # 恢复暂存的内容
git stash drop # 删除暂存区

 

远程仓库
创建SSH key

 

复制代码
代码如下:

ssh-keygen -t rsa -C "email@xx.com"

如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人
登陆GitHub,打开“Account settings”,“SSH Keys”页面: 
然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容

 

将本地仓库推送到GitHub仓库
 

复制代码
代码如下:

git remote add origin git@github.com:pastqing/wangdao.git 
git push -u origin mastercd

由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令 
此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改

 

从远程仓库克隆
 

复制代码
代码如下:

git clone git@github.com:pastqing/wangdao.git

 

查看提交记录
 

复制代码
代码如下:

git log
git log <file> # 查看该文件每次提交记录
git log -p <file> # 查看每次详细修改内容的diff
git log -p -2 # 查看最近两次详细修改内容的diff
git log --stat #查看提交统计信息

延伸 · 阅读

精彩推荐
  • UbuntuUbuntu安装xrdp实现从Windows端的远程桌面连接教程

    Ubuntu安装xrdp实现从Windows端的远程桌面连接教程

    xrdp是一个提供针对Windows远程桌面支持的服务器程序,有了它在图形化界面的Ubuntu上的运行,我们便可以在Windows下用mstsc来进行远程GUI操控了,下面我们就来看一下Ubuntu安装xrdp实现从Windows端的远程桌面连接教程...

    zhutiehan 389 2019-05-24
  • Ubuntuubuntu14.04下apt-get install的报错以及解决方法

    ubuntu14.04下apt-get install的报错以及解决方法

    前几天想要在ubuntu server 14.04下安装redis-server 结果指令敲进去之后就报错,具体什么信息我没有保留,大概就是说你磁盘空间已经满了之类的,还让你尝试输入下面的指令 apt-get -f install 这条指令就是用来修正一些软件依赖中存在的...

    网络 74 2019-05-18
  • UbuntuUbuntu 19.10 ISO 将捆绑闭源 Nvidia 驱动程序

    Ubuntu 19.10 ISO 将捆绑闭源 Nvidia 驱动程序

    计划于 2019 年 10 月 17 日正式发布的Ubuntu 19.10版本又有了新动作,Canonical宣布将在该版本的 ISO 上默认附带闭源的 Nvidia GPU 驱动程序,且该计划已获得 NVIDIA 的许可。 那么 Ubuntu 为什么要在安装包中捆绑闭源程序呢?官方解释说这是为...

    开源中国 359 2019-06-02
  • UbuntuUbuntu 15.04如何修改主机名?Ubuntu,15.04修改主机名的方法

    Ubuntu 15.04如何修改主机名?Ubuntu,15.04修改主机名的方法

    近日,一些朋友问小编Ubuntu 15.04如何修改主机名?今天小编就为大家带来Ubuntu,15.04修改主机名的方法!希望对大家会有帮助!有需要的朋友一起去看看吧...

    Ubuntu之家 117 2019-05-30
  • UbuntuUbuntu系统选择中文安装后日期显示乱码问题的解决方法

    Ubuntu系统选择中文安装后日期显示乱码问题的解决方法

    这里来记录一下Ubuntu系统选择中文安装后日期显示乱码问题的解决方法,环境为Ubuntu Server 14.04 LTS,该方法在GUI和CLI环境下都可适用:...

    eechen 212 2019-06-03
  • Ubuntu在Ubuntu上搭建网桥的方法

    在Ubuntu上搭建网桥的方法

    一些朋友还不知道如何在 Ubuntu上搭建网桥呢?下面我们就一起来看一篇关于Ubuntu 上搭建网桥的方法吧,希望此文章能够对各位朋友学习在Ubuntu 上搭建网桥有帮助哦...

    Ubuntu之家 419 2019-06-02
  • UbuntuUbuntu系统拼音无法正确打字的解决方法

    Ubuntu系统拼音无法正确打字的解决方法

    近日,一些朋友问小编Ubuntu系统拼音无法正确打字怎么解决?今天小编将为大家分享Ubuntu系统拼音无法正确打字的解决方法!希望对大家会有帮助,有需要的朋友一起去看看吧...

    Ubuntu之家 436 2019-05-30
  • UbuntuUbuntu系统中使用apt-file命令来查找缺失文件

    Ubuntu系统中使用apt-file命令来查找缺失文件

    这篇文章主要介绍了Ubuntu系统中使用apt-file命令来查找缺失文件的方法,apt-file是一个简单强大的apt包搜索工具,适用于各种Debian系的以apt为默认包管理的Linux系统,需要的朋友可以参考下...

    Linux运维日志 107 2019-05-20