Git工具的使用

1、安装git
    linux:yun install git
    window: 下载安装程序,使用Git Bash
2、配置全局变量
    git config --global user.name 'your name'
    git config --global user.email 'your email'
    
3、创建版本库
    创建一个文件夹gitRepository,使用git init 将这个目录变成Git可以管理的仓库。
    Git init
    
4、把文件添加到Git仓库
    4.1 新建一个文件readme.txt
        touch readme.txt
    4.2 把文件添加到仓库
        git add readme.txt
    4.3 用git commit告诉git,把文件提交给仓库
        git commit -m 'wrote a readme file'
        
5、时光穿梭机
    5.1 回退到上一个版本
        git reset --hard HEAD^
        git reset --hard HEAD^^
        git reset --hard HEAD~100
    5.2 前进到某个版本
        git reset --hard commit_id
        
6、工作区和暂存区
    6.1 工作区(working Directory)
        比如我的gitRepository文件夹就是一个工作区
    6.2 版本库(repository)
        版本库里存放很多东西,其中最重要的就是暂存区(stage),还有git为我们自动创建的第一个ie分支master,以及指向master的一个指针叫HEAD
        git add <file> 就是把文件修改添加到暂存区
        git commit 提交修改,就是把暂存区的所有内容提交到当前分支
    6.3 撤销修改(丢弃工作区的修改)
        git checkout --readme.txt
    6.4 把暂存区的修改撤销掉,重新放回到工作区
        git reset HEAD file
    6.5 删除文件(工作区文件删除,从版本库中也删除该文件)
        git rm test.txt
        git commit -m 'remove test.txt'
    6.6 删除文件(工作区文件删除,从版本库中把文件恢复到最新版本)
        git checkout -- test.txt
        
7、远程仓库
    在github上创建新的仓库
    git remote add origin git@github.com:sunshineboyce/helloWorld.git
    第一次推送master分支到所有内容
    git push -u origin master
    此后,使用git push origin master推送最新修改
    
8、分支管理
    8.1 创建dev分支,并切换到dev分支
        git checkout -b dev 
        相当于:
        git branch dev
        git checkout dev
    8.2 查看分支
        git branch
    8.3 合并指定分支到当前分支
        git merge dev
    8.4 删除分支
        git branch -d dev
    8.5 解决冲突
        在dev分支上修改了readme.txt,在master分支上修改了同一个位置的内容,都提交,然后合并分支dev,提示冲突。需手动修改之后在提交。
    8.6 分支管理策略
        通常,合并分支,Git会用Fast forward模式,这种模式下,删除分支后,会丢掉分支信息。
        如果强制禁用fast forward模式,Git会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息。
        git merge --no-ff -m 'merge with no-ff' dev
    8.7 bug分支
        当前分支工作未完成,临时处理别的问题,创建新分支
        把当前工作现场储藏起来,等恢复现场后继续工作
        git stash
        把stash内容恢复一下,有2个方法:
        git stash apply :恢复后stash内容并不删除,需要用git stash drop删除
        git stash pop :恢复的同时stash内容也删除了。
    8.8 多人协作
        推送分支
        git push origin dev
        创建远程分支dev到本地
        git checkout -b dev origin/dev
        
9、标签管理
    9.1 创建标签
        用于新建一个标签,默认为HEAD,也可以指定一个commitid
        git tag <name> 
        git tag 
        

Git的常用命令

    查看工作区的状态
    git status 
    查看工作区的修改内容
    git diff
    查看历史记录
    git log
    got log --pretty=oneline
    查看每一次的命令
    git reflog
    查看工作区和版本库里最新版本的区别
    git diff HEAD -- readme.txt
    丢弃工作区的修改
    git checkout -- <file>
    把暂存区的修改撤销掉,重新放回到工作区
    git reset HEAD <file>
    从远程库克隆一个本地库
    git clone git@github.com:sunshineboyce/helloWorld.git
    查看分支的合并情况
    git log --graph --pretty=oneline --abbrev-commit
    丢弃一个没有被合并过的分支
    git branch -d branch_name
    git branch -D branch_name

 

是从廖雪峰官网学习的,写的不好,多多指教。廖雪峰官网地址:https://www.liaoxuefeng.com/

posted on 2018-04-14 19:48  hello策  阅读(109)  评论(0编辑  收藏  举报