git 使用

一、什么是git

  git是一个开源的分布式版本控制系统,可以用来进行项目代码管理。

二、git的安装

  1、下载git安装文件   https://git-scm.com/download/win

    

  2.安装:鼠标右键点击桌面,如果出现如图所示选项,则说明安装成功。

    

三、git命令行使用

  

先安装好git,然后创建一个文件夹来为创建本地仓库作准备。
1.使用git init命令来让文件夹变为本地仓库,该文件夹中会创建一个隐藏的文件夹.git

2.使用git status命令查看当前仓库的状态

3.使用git config user.name XXX 来设置当前仓库的用户名
   使用git config user.email XXX 来设置当前仓库的邮箱
   使用git config --global user.name XXX 来设置全局(当前系统登录用户)的用户名
   使用git config --global user.email XXX来设置全局邮箱
####上面设置的用户名和邮箱和登录的用户名邮箱并没有什么关系

4.创建一个文件,使用git add XXX(文件名) 来将文件保存到暂存区。

5.使用git commit XXX(文件名)来将文件保存到本地仓库,如果是已经提交过的文件修改后提交,可以不变需要先提交git add命令

6.使用git commit -m "这里是注释" XXX(文件名)   可以在提交的时候直接带注释

7.git rm XXX 删除工作区和暂存区的文件

8.git checkout -- XXX 如果修改了工作区的文件,但是没有提交到暂存区,可以用这个命令退回。--很重要不能丢

9.git reset head XXX 如果修改了工作区的文件,并且已经提交到暂存区,那么可以用这个命令恢复缓存区,
        然后用上一个命令恢复工作区

8.使用git log查看提交日志
   使用git log --pretty=oneline 查看简略日志
   使用git reflog 查看最简日志和版本的回滚信息

9.git diff XXX(文件名) 比较工作区与暂存区文件差别
   git diff --cached XXX(文件名) 比较暂存区和最新版本库中的文件差别
   git diff head XXX(文件名)  比较工作区与最新版本库中的文件差异
   git diff commit-id  [<path>...] 比较工作区与指定commit-id 的差异
   git diff --cached [<commit-id>] [<path>...]  比较暂存区和指定commit-id的差别
   git diff [<commit-id>] [<commit-id>] 比较两个commit-id之间的差异

10.git reset --hard head^   向后退一个版本,可以有多个^,一个^代表向后一个版本
   git reset --hard head~1 向后退一个版本, 数字是几就退几个版本
   git reset --hard 580cc88  跳转到版本580cc88

11.git branch XXX 创建一个分支
     git checkout XXX 切换到某个分支
     git checkout -b XXX 创建并且直接切换到某个分支
     git merge XXX 将某个分支合并到自己这个分支
     git branch -d XXX 删除某个分支 

12.git remote add name url   链接远程仓库,name 为 远程仓库的自定义名称默认为origin,url为远程库的地址。
              这里有两种方式,一种是https,一种是ssh;ssh要生成秘钥;
            使用ssh-keygen -t rsa -C "your_email@youremail.com"命令来生成秘钥
     git remote rename oldname newname 修改远程仓库名称
     git remote rm origin 删除远程仓库
     git remote origin set-url [url]  修改远程仓库地址
     git push -u name matser 将本地库master分支的文件推送到远程库,同时拉去远程库的文件,name为远程库的名称
     git push name master 将本地master分支的文件推送到远程库,name为远程库的名称
     git clone XXX 从远程库克隆一个本地库
     git remote 显示远程仓库的名称
     git remote show name 显示远程仓库的详细信息
     git fetch origin_name master:tmp    将远程仓库的master分支下载到本地的tmp分支
     git pull origin_name master:tmp 将远程仓库的master分支下载到本地的tmp分支,并merge到本地。相当于fetch+merge。

13.生成ssh秘钥
ssh-keygen

四、github和gitlib 的使用

  

  1、github使用

    创建github账号,然后创建repository。

    通过url来设置本地库所关联的远程库。有两种方式一种是https,一种是ssh。如果使用ssh则需要设置秘钥。

  

   2.gitlib使用

    先安装gitlib

  

13.ubuntu上在线安装gitlab
     13.1 先安装openssh
    sudo apt-get update
    sudo apt-get install -y curl openssh-server ca-certificates

    13.2 安装postfix
    sudo apt-get install -y postfix

    13.3获取gitlab的信息
    curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash

    13.4 安装gitlab
    sudo  apt-get install gitlab-ee

    13.5 初始化gitlab
    sudo gitlab-ctl reconfigure

     13.6 指定gitlib的网址    
    vim  /etc/gitlab/gitlab.rb
    编辑:external_url '你的网址' ,例如:external_url 'http://192.168.0.209'
    编辑完成后,再sudo gitlab-ctl reconfigure一下,使配置生效

   使用gitlib,刚开始进去直接设置密码,后面也可以注册新的账号。如果启动的时候报502的错误,有可能是因为内存设置太小,或者端口被占用

  

    gitlib和github不同,里面创建的project就是远程库(github中的repository )

    

 同样有两种方式连接到该远程库,一种http,一种是ssh,ssh也是需要设置秘钥,注意要使用对应的ip来替换掉对应的地址。

五、eclipse 使用git

  1.eclipse自带了git支持,可以在下图所示的地方配置属性。

  

  

  2.可以通过import来将远程库的项目导入到eclipse

         

      

   3.将本地的项目同步到远程库

    

   4.eclipse提交代码

  

 

   5.eclipse 冲突解决,有冲突先将远程代码获取下来,然后修改后再提交

 

原文地址:https://www.cnblogs.com/kyleinjava/p/10393813.html