Git基本命令学习笔记


今天学习Git这个版本管理工具,学习地址:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
现将笔记整理发布:


git命令总结

----------基础-------------------
1 $ git config --global user.name "fflin" //关联用户名
2 $ git config --global user.email "13521764775@163.com" //关联邮箱
3 $ mkdir fflindemo //创建版本库
4 $ cd fflindemo    //进入版本库
5 $ pwd            //显示当前目录
6 $ git init    //初始化仓库
    显示 Initialized empty Git repository in C:/Users/Administrator/fflindemo/.git/
        其中.git是Git用来跟踪管理版本库的,不要手动修改

7 $ git add readme.txt 把文件放入仓库目录里,使用这个命令告诉Git,实际上是把文件放到了Git的暂存区(stage)
8 $ git commit -m "add a readme file" 把文件提交到Git
        提交成功:
        [master (root-commit) f937b08] add a readme file
         1 file changed, 0 insertions(+), 0 deletions(-)
         create mode 100644 readme.txt
9 $ git status 查看仓库当前状态
        On branch master
        Changes not staged for commit:
          (use "git add <file>..." to update what will be committed)
          (use "git checkout -- <file>..." to discard changes in working directory)

                modified:   readme.txt

            no changes added to commit (use "git add" and/or "git commit -a")

10 $ git diff readme.txt  查看被修改的文件都改了什么内容

        $ git diff readme.txt
        diff --git a/readme.txt b/readme.txt
        index e69de29..8993a63 100644
        --- a/readme.txt
        +++ b/readme.txt
        @@ -0,0 +1 @@
        +hello Git
        
11 $ git log  查看提交的历史记录

        commit b469255efc0c5864c483af7701bfa2f4dbae97ac
        Author: fflin <13521764775@163.com>
        Date:   Wed Mar 15 09:54:08 2017 +0800

            文件增加一行文本

        commit f937b08f902c9b389c4063a56cd4b16c3b9cd2a2
        Author: fflin <13521764775@163.com>
        Date:   Wed Mar 15 09:47:09 2017 +0800

            add a readme file
            
12 $ git log --pretty=oneline  //以一行的形式来查看git提交日志

        b469255efc0c5864c483af7701bfa2f4dbae97ac 文件增加一行文本
        f937b08f902c9b389c4063a56cd4b16c3b9cd2a2 add a readme file
        
13 $ git reset --hard HEAD  //回退到上一个版本
        HEAD is now at f937b08 add a readme file
        上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。
        
14 $ git reflog  显示每一次指令
        b469255 HEAD@{0}: reset: moving to b469255
        f937b08 HEAD@{1}: reset: moving to HEAD
        f937b08 HEAD@{2}: reset: moving to HEAD^
        b469255 HEAD@{3}: commit: 文件增加一行文本
        f937b08 HEAD@{4}: commit (initial): add a readme file
        
15 $ git checkout -- readme.txt  可以丢弃对工作区的修改,删除掉工作区文件新添加的部分,注意这里是“--”
16 $ git reset HEAD readme.txt   可以撤销对暂存区的修改,撤销已经add到暂存区的文件,使文件回到工作区,然后使用第15条指令,撤销工作区的修改

17 $ rm test.txt  删除文件
18 $ git rm tesr.txt  确定删除文件
        rm 'tesr.txt'
19 $ git checkout -- test.txt   撤销删除文件

20 $ ssh-keygen -t rsa -C "13521764775@163.com"  创建SSH Key,创建完成会在“C:\Users\Administrator\.ssh”目录下生成两个文件,一个公钥一个私钥

-------------------------分支---------------------------------

21 $ git checkout -b dev  创建dev分支,然后切换到该分支
        Switched to a new branch 'dev'
        
   $ git branch dev 创建分支
   $ git checkout dev 切换分支
        
22 $ git branch  列出所有分支,在当前分支前加了"*"
    * dev
      master
23     在当前分支(dev)上修改了readme.txt文本内容并执行add 和 commit的操作后
    $ git checkout master  切换到master分支,再打开文件夹查看readme.txt,发现修改后的内容并没有出现

24 $ git merge dev 合并指定分支到当前分支,合并后,再查看readme.txt文件,发现已经出现了刚才修改的内容
25 $ git branch -d dev 合并后内容都再当前分支了,就可以删除dev分支

26 分支冲突强行合并时,文件内容
        hello Git
        添加log
        添加了dev 分支
        <<<<<<< HEAD
        添加了feature1分支,master
        =======
        添加了feature分支
        >>>>>>> feature1
    git以<<<<<<<<  ======  >>>>>>>>>>来标记不同的分支内容,
    修改后,执行add和commit的操作
27 $ git log --graph --pretty=oneline --abbrev-commit  查看分支的合并情况

28 $ git stash  开发过程中会遇到一个功能未完善或者某个逻辑未写完时,有需要处理某个Bug,这时用stash命令把当前的工作区储藏起来,修复完Bug后再继续工作
        Saved working directory and index state WIP on master: dbfe060 处理了冲突
        HEAD is now at dbfe060 处理了冲突

        Administrator@PC-179 MINGW64 ~/fflinDemo (master)
        $ git status
        On branch master
        nothing to commit, working tree clean
        
29 $ git stash pop 恢复储藏的文件,回到工作现场
        On branch master
        Changes not staged for commit:
          (use "git add <file>..." to update what will be committed)
          (use "git checkout -- <file>..." to discard changes in working directory)

                modified:   readme.txt

        no changes added to commit (use "git add" and/or "git commit -a")
        Dropped refs/stash@{0} (0733938ec2cd86631700661319a64a298874dd9a)

-------------远程-----------------

30 $ git remote -v 查看远程库信息
        origin  git@github.com.fflin/fflinDemo.git (fetch)
        origin  git@github.com.fflin/fflinDemo.git (push)
        
        
--------------标签----------------------.

31 $ git tag v1.0  创建标签
32 $ git tag 查看所有标签
33 $ git tag v0.9 a6641b5  为未打标签的提交增加标签
34 $ git tag -a v0.1 -m "第一个文件" f937b08  创建带有说明的标签,-a代表标签名,-m代表说明文本
35 $ git show v0.1  展示带有说明的标签的提交
            tag v0.1
            Tagger: fflin <13521764775@163.com>
            Date:   Wed Mar 15 14:10:09 2017 +0800

            第一个文件

            commit f937b08f902c9b389c4063a56cd4b16c3b9cd2a2
            Author: fflin <13521764775@163.com>
            Date:   Wed Mar 15 09:47:09 2017 +0800

                add a readme file

            diff --git a/readme.txt b/readme.txt
            new file mode 100644
            index 0000000..e69de29
36 $ git tag -d v0.9  删除错误标签
        Deleted tag 'v0.9' (was a6641b5)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值