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

    安装

    Ubuntu

    // 安装
    sudo apt-get install git
    // 配置用户名
    git config --global user.name "Your Name"
    // 配置email
    git config --global user.email "email@example.com"

    使用

    创建仓库

    // 切换到仓库目录下
    git init

    暂存, 将修改的文件添加到仓库(将文件提交到暂存区)

    // 将对文件的修改添加到暂存区
    git add test.txt
    // 将删除文件的操作添加到暂存区
    git rm test.txt

     提交, 提交修改到仓库(将暂存区文件整体提交到分支)(相当于创建一个快照,便于回退)

    git commit -m "本次提交信息"

    推送, 将本地代码推送到远端

    git push origin master

    贮藏, (当需要切换分支, 但当前分支存在未完成的代码时, 可以先进行贮藏, 之后再恢复)

    // 将文件贮藏
    git stash
    // 应用贮藏
    git stash apply
    // 删除贮藏
    git stash drop
    // 应用并删除贮藏
    git stash pop
    // 应用指定贮藏, 删除等操作同理
    git stash apply stash@{0} // 可以通过list查看
    
    // 查看贮藏列表
    git stash list

    查看当前仓库状态

    git status

    查看文件修改状态

    // 查看文件修改状态
    git diff test.txt
    // 查看文件与 git库中最新版本的区别
    git diff HEAD -- test.txt

    查看版本日志

    git log
    // 显示简单信息
    git log --pretty=oneline
    // 将提交历史整理成一条直线
    git rebase

    版本回退(git中的版本回退并没有将版本删除, 只是将版本指针指向了指定的版本并更新工作区文件)

    // HEAD表示当前分支当前版本 ^表示上一个版本,^^表示上两个版本
    git reset --hard HEAD^
    // 表示上5个版本
    git reset --hard HEAD~5
    // 回退到 commit id 为 d8b4dc开头的版本
    git reset --hard d8b4dc
    // 将文件从暂存区删除对其的修改,相当于撤销 文件的操作 操作, 仅仅更新暂存区状态
    git reset HEAD test.txt

    查看执行命令记录

    // 查看执行过得命令, 以及版本commit id
    git reflog

    撤销修改

    // 将文件修改撤销到 最近一次 add 或 commit 时的状态, 用版本库中的版本,替换工作区的版本
    git checkout -- test.txt

     分支

    // 创建并切换分支
    git checkout -b dev
    // 创建分支
    git branch dev
    // 切换分支
    git checkout dev
    // 切换本地分支与远程分支对应
    git checkout -b dev origin/dev
    // 创建本地分支与远程分支的关联, 在拉取远程分支代码时,若不关联会失败
    git branch --set-upstream dev origin/dev
    // 查看所有分支 git branch // 删除分支 git branch -d dev // 合并分支, 合并dev分支到当前分支 git merge dev

    // 将某次提交合并到当前分支
    git cherry-pick commit_id

    标签(标签是版本库的一个快照, 其实就相当于给一个commit起个别名, 跟某次commit绑在一起)

    // 创建标签, 跟当前分支的最新一次提交绑在一起
    git tag tagName
    // 将标签与指定的commit绑定
    git tag tagName commitId
    // 创建带有说明文字的标签
    git tag -a tagName -m "message"
    // 删除标签
    git tag -d tagName
    // 查看所有标签
    git tag
    // 查看所有标签信息
    git show
    // 查看指定标签信息
    git show tagName

     git链接 GitHub

    /* 
    1. 创建ssh秘钥
    会在 用户主目录下.ssh 目录下创建 id_rsa(私钥) id_ras.pub(公钥) 两个文件 
    2. 将创建的 公钥添加到GitHub上
     */
    ssh-keygen -t rsa -C "邮箱地址" // Windows下使用 Git Bash
    /*
    将本地代码推送到远程
    */
    
    // 关联远程仓库
    git remote add origin git@github.com:hujingnb/gitTest.git
    // 首次将修改推送到远程仓库, -f 舍弃线上文件,强制推送
    git push -u origin master
    // 之后再次推送
    git push origin master
    // 将远程代码拉到本地
    git pull origin master
    /*
    将远程代码拉到本地
    */
    // 下载代码
    git clone git@github.com:hujingnb/gitTest.git

      

  • 相关阅读:
    《剑指offer》面试题7:旋转数组的最小数字
    eclipse ------ TODO、FIXME、XXX 等任务标记
    RT-Thread ------ waitqueue
    RT-Thread ------ 设备注册
    ubuntu 安装 glibc
    openwrt上面移植MQTT代码
    MH5000-31模组无法识别SIM卡
    "Hello osmdroid World"手机GPS轨迹数据
    地质数据下载
    绘图软件Surfer绘制等高线
  • 原文地址:https://www.cnblogs.com/hujingnb/p/10638558.html
Copyright © 2011-2022 走看看