git学习笔记

git学习笔记

基本操作

  1. 初始化仓库

    git init 路径(可加可不加,不加就默认在现在的路径)
    
  2. 将文件添加进缓存区

    git add 文件名
    

    添加当前目录的所有文件

    git add . 
    
  3. 提交

    git commit -m '自定义提交的信息'
    
  4. 查看提交记录

    git log
    
  5. 回退

    git reset 回退记录的id(简单写前几位就行)
    
  6. 回退了向看回退之前的记录(可以查看每一次操作的记录)

    git reflog
    

    然后找到你想回退的那个版本的commit id 就行了

分支操作

  1. 切换分支

    git checkout 
    

    后面可跟参数,不跟参数就默认切换到当前分支,可用于丢弃工作区的修改

    1. 丢弃修改两种情况

      1. 文件未被add

        文件将会恢复到上一次提交的样子

      2. 已被add

        文件恢复到add里面的样子

      以下指令可以指定哪些文件切换到当前分支

      放弃所有文件的修改

    git checkout .
    

    ​ 放弃某个文件的修改,即将某个文件切换到当前add或commit里面的状态

    git checkout -- filename 
    

    合并分支

  2. 先切换到被合并的那个分支(如,你修改的分支是brach,你想把修改合并到master,那么就先checkout到master)

  3. 使用下述命令

    git merge 修改完成的分支名
    

    例子

//你修改的是branch分支,你想把修改合并到master
git checkout master
git merge branch
......解决冲突
git add *
git push/commit

远程操作

  1. 添加远程仓库

    git remote add 远程仓库别名(自己起的) 远程服务器账号名@服务器地址或者服务器域名:仓库在服务器的路径
    
  2. 查看现有的远程仓库

    git remote
    
  3. push代码到远程仓库

    git push 远程仓库别名 远程分支名
    
  4. 从服务器下载代码

    1. 直接pull(会直接合并到当前分支)

      git pull 服务器别名
      
    2. 先fetch,再合并

      git fetch 服务器别名
      
      git merge  服务器别名/分支名
      

解决冲突

从服务器拉取代码时,若是有多人使用这个仓库,免不了有冲突,所以需要解决冲突

  1. 查看合并(merge)或者 拉取(pull)后,查看冲突的文件

    git status
    

    以下为例子

    $ git status
    On branch master
    You have unmerged paths.
      (fix conflicts and run "git commit")
      (use "git merge --abort" to abort the merge)
    
    Unmerged paths:
      (use "git add <file>..." to mark resolution)
            both modified:   merge.txt
    
    no changes added to commit (use "git add" and/or "git commit -a")
    
    

    Unmerged paths:中,将会提示你冲突的文件

    冲突的文件将会变成这个样子

    未冲突的内容(两个分支都未改动)在分隔线外面
    <<<<<<< HEAD
    Git当前所在分支修改的内容(准确来说是HEAD指针指向的分支修改的内容)
    =======
    要合并过来的分支修改的内容
    >>>>>>> branch_to_merge
    

    (保留某一个部分/都保留),然后把多出来的<<<<<<< HEAD 和 = = = = = = 和 >>>>>>> branch_to_merge 删除

    然后再

    git add . 或者 git add 冲突的文件名
    

    然后

    git commit -m '提交的信息'
    

    就可以解决冲突了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值