Git 简单使用

 

 

1. 配置git用户和邮箱

 

$ git config --global user.name "lanleilin"   

$ git config --global user.email "bla@qq.com"

 

 

查看配置

 

$ git config --global user.name

$ git config --global user.email

 

查看所有配置

 

$ git config --list

 

2.初始化git

 

    先创建一个空目录 ,然后进入此目录

    点击右键选择Git-Bash打开命令行

    输入git init命令把这个目录变成Git可以管理的仓库

 

$ git init

 

    通过ls -al命令查看所有文件

从远程库克隆:

 

3.git中的三个区

 

工作流

 

    工作区通过git add 添加到暂存区

 

      $ git add 'readme.txt'

 

    暂存区

    过渡的作用,避免误操作,保护工作区和历史区,分支处理;通过git commit 添加到历史区

 

      $ git commit –m "wrote a readme text"

 

    历史区查看历史状态

 

      $ git log

 

        修改时通过git status查看当前状态

 

    4.git diff

 

    不同区的代码比较

    4.1 工作区和暂存区

 

    $ git diff

 

    4.2 暂存区和历史区

 

    $ git diff --cached(--staged)

 

    4.3 工作区和版本库

 

    $ git diff master

 

    5. 撤销

    5.1 撤销回git add的内容

 

    git reset Head "文件名"

 

    5.2 撤回文件

        先从缓存区撤销,缓存区无内容,从历史区域撤销

 

        $ git checkout "文件名"

 

       

    6.删除

    6.1 删除暂存区和工作区

 

    删除暂存区中的内容,并且保证工作区中的内容已经不存在

 

    $ git rm "文件名"

 

        若本地文件存在则不能删除,需要通过-f参数删除

 

    6.2 仅删除缓存区

 

    $ git rm --cached "文件名"

 

    7. 恢复

    7.1 恢复某个版本文件

 

    $ git checkout commit_id filename 某个文件

 

    7.2 通过版本id恢复

 

    $ git reset --hard commit_id

 

    7.3 恢复未来

 

    查看当时回滚时的版本

 

    $ git reflog

 

    7.4 快速版本回退

 

    $ git reset --hard HEAD^

    $ git reset --hard HEAD~3

 

    8. 同步远程仓库

8.1 gitHub 新建项目

创建ssh:

Gitbash输入: $ ssh-keygen -t rsa -C email@qq.com

在github中add ssh

粘贴id.rsa.pub内容(公钥

     私钥是不告诉别人的,我拿私钥粘贴了半天(

 

        新建项目

    8.2 添加远程仓库

 

    $ git remote add origin git@github.com:lanleilin/learngit.git

 

这里出现报错, fatal: remote origin already exists.

1、先输入$ git remote rm origin

2、再输入$ git remote add origin git@github.com:lanleilin/learngit.git 就不会报错了

 是的然后push 的时候又报错了:

 Unknown SSL protocol error in connection to bitbucket.org:443

尝试了一些方法:

 

   最后还是重装了....

 

8.3 推送代码

 

    $ git push origin master

 

    8.4 查看

 

    $ git remote 查看名字

    $ git remote -v 查看地址

 

    9.代码的合并

    9.1 git fetch

 

    $ git fetch

 

    拉取过来手动合并

 

    $ git diff master origin/master

    $ git merge origin/master

 

    9.2 git pull

 

    拉取并合并

 

    git pull

 

    10. 分支

 

    git branch

    git branch 创建分支

    git checkout a

    git checkout -b c切换分支

    在master  git merge

    git checkout b

    git branch --merged 合并了哪些分支

    git branch --no-merged 合并了哪些分支

    git branch -d a 删除分支

    git branch -D a 删除分支

    11    $ makdir ~/hello-world    //创建一个项目hello-world

    $ cd ~/hello-world       //打开这个项目

    $ git init             //初始化

    $ touch README

    $ git add README        //更新README文件

    $ git commit -m 'first commit'     //提交更新,并注释信息“first commit”

    $ git remote add origin git@github.com:lanleilin/hello-world.git     //连接远程github项目

    $ git push -u origin master     //将本地项目更新到github项目上去