git的基本操作命令

本文针对于使用git管理代码的初学者的简单教程

  1. 建立本地仓库
    1). 本地新建文件夹作为存储代码仓,右键->Git Bash Here;
    克隆:

     $ git clone git://github.com/celebcay/code123.git
    Cloning into 'code123'...
    remote: Enumerating objects: 5, done.
    remote: Counting objects: 100% (5/5), done.
    remote: Compressing objects: 100% (4/4), done.
    remote: Total 5 (delta 0), reused 0 (delta 0), pack-reused 0
    Receiving objects: 100% (5/5), 12.68 KiB | 1.58 MiB/s, done.
    

    2).切换路径到代码仓目录(develop)

    $ cd ./code123/
    

    3).查看代码仓信息

    $ git show
    commit 101cabadcb080b28947dd0949f90a42b02057947 (HEAD 		    -> develop, origin/develop
    , origin/HEAD)
    Author: 幻竹涂 <73648426+celebcay@users.noreply.github.com>
     Date:   Sat Nov 7 14:48:13 2020 +0800
     Initial commit
    
    diff --git a/.gitignore b/.gitignore
    new file mode 100644
    index 0000000..259148f
    --- /dev/null
    +++ b/.gitignore
    @@ -0,0 +1,32 @@
    +# Prerequisites
    +*.d
    +
    +# Compiled Object files
    +*.slo
    +*.lo
    +*.o
    +*.obj
    +
    +# Precompiled Headers
    

    4).新建本地分支

     $ git checkout -b huanzhutu1107
     Switched to a new branch 'huanzhutu1107'
    (切换 git checkout huanzhutu1107)
    

    5)创建添加文件

    $mkdit code ##创建目录
    $touch hello.cpp ##创建文件
    $ git add hello.cpp
    

    6).提交修改到当前分支

    $ git commit -m "first commit"
    

    7).推送本地分支到GitHub

    $ git push origin huanzhutu1107
    Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
    remote:
    remote: Create a pull request for 'huanzhutu1107' on GitHub by                  		            visiting:
    remote:                     https://github.com/celebcay/code123/pull/new/huanzhutu1107
    remote:
    To https://github.com/celebcay/code123.git
     * [new branch]      huanzhutu1107 -> huanzhutu1107
    

    8).合并本地个人分支到develop分支

    $git checkout develop
    $ git merge huanzhutu1107
    Already up to date.
    

    9).推送本地分支远程

    $ git push origin develop
    Enumerating objects: 7, done.
    Counting objects: 100% (7/7), done.
    Delta compression using up to 2 threads
    Compressing objects: 100% (2/2), done.
    Writing objects: 100% (4/4), 297 bytes | 99.00 KiB/s, done.
    Total 4 (delta 1), reused 0 (delta 0), pack-reused 0
    remote: Resolving deltas: 100% (1/1), completed with 1 local         object.
    To https://github.com/celebcay/code123.git
       3ddd32e..d2eb549  develop -> develop
    

2.出现问题:

    $ git push origin develop
    fatal: remote error:
    You can't push to git://github.com/celebcay/code123.git
                     Use https://github.com/celebcay/code123.git

解决方法
找到代码仓下 .git文件夹config配置文件
修改git->https

[remote "origin"]
url = https://github.com/celebcay/code123.git

3.合并其中某一次提交到当前分支

1).找到提交记录id
 $ git log
commit d2eb549d57d5c51e9f0108ca0b06d3dfd5e62a30 (HEAD -> develop,   origin/huanzhutu1107, origin
/develop, origin/HEAD, huanzhutu1107)
Author: calebcay <calebcay@163.com>
Date:   Sat Nov 7 15:55:09 2020 +0800

xiugai

commit 3ddd32e53fbe5ab9a2f2571916af90be7ac10184
Author: calebcay <calebcay@163.com>
Date:   Sat Nov 7 15:47:17 2020 +0800

first commit

commit 101cabadcb080b28947dd0949f90a42b02057947
Author: 幻竹涂 <73648426+celebcay@users.noreply.github.com>
Date:   Sat Nov 7 14:48:13 2020 +0800

Initial commit

2).切换到需要合并的分支

 git cherry-pick 提交id