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

    基本流程:

    git diff
    git add .
    git status
    git commit -m xxxxxx
    git push origin master
    

    创建版本库

    mkdir xxx
    cd xxx
    git init  
    

    版本回退

    HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id

    穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。

    要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。

    git log --pretty=oneline  
    git log --oneline // 简写  
    git reflog  
    
    git reset --hard HEAD^  
    git reset --hard HEAD^^  
    ...  
    git reset --hard HEAD~13  
    

    撤销修改

    场景1: 当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file

    • git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。

    场景2: 当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。


    删除文件

    git rm xxx.xx


    忽略已经被提交的文件

    正确的做法应该是:

    • 首先 git rm --cached logs/xx.log
    • 然后更新 .gitignore 忽略掉目标文件
    • 最后 git commit -m "We really don't want Git to track this anymore!"

    添加远程库

    详情见:廖雪峰的这篇文章

    要关联一个远程库,首先cd xxx,然后使用命令git remote add origin git@github.com:zhaokang555/xxx.git或者git remote add origin https://github.com/zhaokang555/xxx.git

    关联后,使用命令git push -u origin master第一次推送master分支的所有内容

    • 我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。

    此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改


    从远程仓库克隆

    在~目录下:

    git clone git@github.com:zhaokang555/xxx.git或者git clone https://github.com/zhaokang555/xxx.git

    • 要克隆一个仓库,首先必须知道仓库的地址,然后使用git clone命令克隆。
      Git支持多种协议,包括https,但通过ssh支持的原生git协议速度最快。

    • GitHub给出的地址不止一个,不光可以用git@github.com:zhaokang555/xxx.git还可以用https://github.com/zhaokang/xxx.git这样的地址。实际上,Git支持多种协议,默认的git://使用ssh,但也可以使用https等其他协议。


    网上找的git常用命令总结

    Git基本常用命令如下:

    • mkdir: XX (创建一个空目录 XX指目录名)
    • pwd: 显示当前目录的路径。
    • git init 把当前的目录变成可以管理的git仓库,生成隐藏.git文件。
    • git add XX 把xx文件添加到暂存区去。
    • git commit –m “XX” 提交文件 –m 后面的是注释。
    • git status 查看仓库状态
    • git diff XX 查看XX文件修改了那些内容
    • git log 查看历史记录
    • git reset –hard HEAD^ 或者 git reset –hard HEAD~ 回退到上一个版本(如果想回退到100个版本,使用git reset –hard HEAD~100 )
    • cat XX 查看XX文件内容
    • git reflog 查看历史记录的版本号id
    • git checkout — XX 把XX文件在工作区的修改全部撤销。
    • git rm XX 删除XX文件
    • git remote add origin https://github.com/tugenhua0707/testgit 关联一个远程库
    • git push –u(第一次要用-u 以后不需要) origin master 把当前master分支推送到远程库
    • git clone https://github.com/tugenhua0707/testgit 从远程库中克隆
    • git checkout –b dev 创建dev分支 并切换到dev分支上
    • git branch 查看当前所有的分支
    • git checkout master 切换回master分支
    • git merge dev 在当前的分支上合并dev分支
    • git branch –d dev 删除dev分支
    • git branch name 创建分支
    • git stash 把当前的工作隐藏起来 等以后恢复现场后继续工作
    • git stash list 查看所有被隐藏的文件列表
    • git stash apply 恢复被隐藏的文件,但是内容不删除
    • git stash drop 删除文件
    • git stash pop 恢复文件的同时 也删除文件
    • git remote 查看远程库的信息
    • git remote –v 查看远程库的详细信息
    • git push origin master Git会把master分支推送到远程库对应的远程分支上
  • 相关阅读:
    bow lsa plsa
    拉普拉斯平滑处理 Laplace Smoothing
    程序员的出路在哪里
    Android各代码层获取系统时间的方法
    TCP/IP笔记 二.网络层(2)——ICMP,RIP,OSPF,BGP
    利用Xtrabackup备份集合恢复一台从库的过程
    char *和char[]的区别,困扰很长时间了,总结下
    不使用webview,用手机浏览器的android app
    [置顶] oracle 快速查询数据库各种信息、及转换对应java代码
    MySQL备份方案-->(利用mysqldump以及binlog二进制日志)
  • 原文地址:https://www.cnblogs.com/forzhaokang/p/5266317.html
Copyright © 2011-2022 走看看