zoukankan      html  css  js  c++  java
  • GIT——这年头不会点Git真不行!!!https://segmentfault.com/a/1190000012411953

    GIT简介

    Git 是一个开源的分布式版本控制软件,用以有效、高速的处理从很小到非常大的项目版本管理。

    • 集中式:远程服务器保存所有版本,用户客户端有某个版本
    • 分布式:远程服务器保存所有版本,用户客户端有所有版本

    GitHub是一个基于Git的远程文件托管平台(同GitCafe、BitBucket和GitLab等)。

    Git本身完全可以做到版本控制,但其所有内容以及版本记录只能保存在本机,如果想要将文件内容以及版本记录同时保存在远程,则需要结合GitHub来使用。使用场景:

    • 无GitHub:在本地 .git 文件夹内维护历时文件
    • 有GitHub:在本地 .git 文件夹内维护历时文件,同时也将历时文件托管在远程仓库

    GIT的使用

    安装

    sudo apt-get install git  # Ubuntu

    yum install git  # centos

    创建github账号

    创建本地与GitHub之间的ssh连接

    • 本地Git仓库和GitHub仓库之间的传输是通过SSH加密的
    • step1:创建项目的SSH Key
    ssh-keygen -t rsa -C "xxx@qq.com"
    
    • 创建完成后,在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人
    • step2:登录github注册或登录账号,打开“settings”的“SSH Keys”页面,然后,点“New SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容,点“Add Key”,你就应该看到已经添加的Key

    创建远程库

    • 登陆GitHub
    • 在右上角找到“new repository”按钮,创建一个新的仓库

    从远程库克隆

    • 将github上的项目,克隆到本地一份
    git clone git@github.com:账号名/项目名.git

    git clone git@github.com:x54256/hello-world-.git
    

    与远程库交互

    • 从远程库获取到本地
    git pull
    • 将本地提交远程库
    git push origin master
    
    • 提示:每次提交前,需要先获取,解决冲突后再次提交

    文件管理

    • 本地仓库分为三部分:工作区,暂存区,仓库区,其中暂存区、仓库区是版本库部分
    • 三个部分的操作及命令如下图

    工作区与暂存区

    • 使用IDE打开目录,创建项目,将文件添加到暂存区
    git add 文件1 文件2 ...
    git add 目录
    
    • 使用暂时区的内容恢复工作区的内容
    git checkout -- 文件名
    
    • 查看暂存区的状态
    git status
    

    暂存区与仓库区

    • 将暂存区的记录添加到仓库区
    git commit -m '本次提交的说明信息'
    
    • 查看仓库区的历史
    当前版本的历史版本:git log
    简版显示:git log --pretty=oneline
    历史命令:git reflog
    
    • 在Git中,用HEAD表示当前版本,也就是最新的提交3628164...882e1e0(注意我的提交ID和你的肯定不一样),上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100

    • 对比工作区和仓库区中某版本某文件的不同

    git diff HEAD -- 文件名
    
    • 回退历史版本到暂存区
    git reset HEAD^或版本号
    

    删除文件

    • 依次执行如下命令
    rm 文件名
    git rm 文件名
    git commit -m '说明信息'

    上传文件

    恢复之前的版本

  • 相关阅读:
    数制转换
    禁止用户复制网页的内容
    TdxDBTreeView的节点移动排序
    cxgrid根据字段设置颜色
    获取用户IP
    在sql server中用存储过程发送邮件
    Delphi的DTS编程
    使年份适用于做有浏览器(IE和FireFox)
    用Delphi写扬声器音乐
    过滤字符串中的HTML代码(VBScript)
  • 原文地址:https://www.cnblogs.com/x54256/p/8183123.html
Copyright © 2011-2022 走看看