zoukankan      html  css  js  c++  java
  • git学习笔记

    等我视频:

    1.安装完git之后设置一下用户名和密码

    $ git config --global user.name "Your Name"
    $ git config --global user.email "email@example.com"

    2.把文件夹变成git仓库

    git init

    3.添加文件

    git add hello.txt

    4.推送文件

    git commit -m "add a new file"

    5.查看当前仓库的状态

    git status

    6.查看修改内容

    git diff

    7.查看版本信息

    git log

    8.回退某个版本

    git reset --hard commit_id

    9.查不到以前版本的commi_id了怎么办?查看命令历史

    git reflog

    10.查看工作区的文件和版本库里面的暂存区内文件的差别

    git diff HEAD --readme.txt

    11.撤销修改,这里分为两种情况,如果你已经add了,就撤销到你add时候的状态,如果你还木有add,那就撤回到你上次commit的状态。下面代码的本意就是撤销到该文件的上一步操作。

    git checkout -- readme.txt   //  -- 前后一定要有空格哦

    12.add文件之后返回add之前的时候

    git reset HEAD readme.txt

    13.删除文件分为两种,rm和git rm

    git rm test.txt  //发现误删
    
    git checkout -- test.txt   //利用checkout撤回到test.txt存在的时候
    git rm test.txt      //利用git rm删除,版本库里面直接没有了,不可撤销
    git commit -m "rm test.txt"

    14.创建公钥和密钥

    $ ssh-keygen -t rsa -C "youremail@example.com"

    15.关联远程仓库

    git remote add origin git@github.com:YouName/repo-name.git   //我这里使用的是github

    16.推送本地仓库到远程仓库

    git push -u origin master  //第一次的时候加 -u 是为了两个仓库之间建立联系,以后就不要-u了
    
    git push origin master  //这是后面的,不要加-u了

    17.从远程仓库上面克隆一个本地仓库

    git clone git@github.com:YourName/rep_name.git

    18.分支

    查看分支:git branch

    创建分支:git branch <name>

    切换分支:git checkout <name>

    创建+切换分支:git checkout -b <name>

    合并某分支到当前分支:git merge <name>

    删除分支:git branch -d <name>

    19.解决分支冲突

    我新建了一个分支feature1,在readme.txt里面添加了

    hello and miss

    然后切换回主分支,在readme.txt里面添加了

    hello & miss

    现在我合并这两个分支,是肯定会起冲突的,可以用git status 查看冲突的文件,也可以cat文件看冲突的部分

    手动修改之后就可以提交了

    git log --graph 可以查看分支合并图

    20.分支管理策略

    合并分支的时候,加上 --no-ff 禁用快速合并可以commit一次合并历史

    git merge --no-ff -m "merge with no-ff" dev

    如果你用的是Fast forward模式就不会有合并历史的分支,建议使用 --no-ff

    21.保存你现在的工作内容,这样你就可以切换分支去改Bug了

    git stash

    还原我们的工作内容

    //方法一
    git stash apply   //恢复工作内容
    git stash  drop   //删除stash存储的东东
    
    //方法二
    git  stash  pop    //直接恢复内容并删除stash里面的东东
    
    
    //查看stash里面存的神魔
    git  stash  ist
    
    //多次stash恢复的时候可以先list然后呢
    git stash apply stash@{0}

    22.强行删除未合并的分支

    git branch -D feature  

    23.多人协作

    24.建立标签

    当前的commit打标签

    git tag v1.0

    给某一个commit版本打标签

    git tag v0.9 e6263...

    查看当前的tag的状态

    git tag

    查看某个标签的详细信息

     git show v0.9

    创建带说明的标签

    git tag -a v0.1 -m "version 0.1 released" 3628164

    用私钥签名一个标签

     git tag -s v0.2 -m "signed version 0.2 released" fec145a  //这个是采用的PGP签名,需要安装gpg 没有的话会报错,怎么安装自己搜去吧

    25.操作标签

    删除本地标签

    git tag -d v0.1

    推送标签到远程仓库

    git push origin v0.1  //推送一个标签
    
    git push origin --tags    //推送全部的标签

    删除远程仓库里面的标签

    git tag -d v0.1   //先删除本地的标签
    
    git push origin :refs/tags/v0.9   //删除远程仓库上的标签

    26.配置别名

    git config --global alias.st status   //把status配置别名成st 注意那个小点点.......

    后面的就没啥记忆的了。什么时候能有自己的房间呢?我想弹琴编曲录音做视频.........

  • 相关阅读:
    在百度搜索"2012世界末日"所展现的地震效果的源代码
    java笔记:熟练掌握线程技术基础篇之解决资源共享的问题(中)下篇
    系统设计与架构笔记:ETL工具开发和设计的建议
    java笔记:熟练掌握线程技术基础篇之线程的协作和死锁的问题(下)
    java笔记:关于复杂数据存储的问题基础篇:数组以及浅拷贝与深拷贝的问题(上)
    java笔记:熟练掌握线程技术基础篇之解决资源共享的问题(中)中篇
    用javascript写的小键盘
    系统设计与架构笔记:对我新公司网站的技术架构初解
    java笔记:关于复杂数据存储的问题基础篇:数组以及浅拷贝与深拷贝的问题(下)
    使用 jQuery,第 1 部分: 将桌面应用程序引入浏览器
  • 原文地址:https://www.cnblogs.com/yunquan/p/7269521.html
Copyright © 2011-2022 走看看