• github的使用---git版本控制


    git 安装

    ubuntu下: sudo apt-get install git 源码安装
    

      

    windows下载git软件即可

    git核心原理

    git常用命令

    git add
    添加提交任务到暂存区
    git commit -m "commit info"
    添加提交任务到版本库
    git log
    查看提交记录
    git diff
    查看工作区和暂存区的差异
    git diff --cached
    查看暂存区和版本库的差异
    git diff HEAD
    查看工作区和版本库的差异
    git status -s
    简短输出,第一个M表示暂存区和版本库内容不一致;第二个M表示工作区和暂存区内容不一致
    git checkout -- file.txt
    把暂存区的file.txt文件恢复到工作区,覆盖工作区之前的修改。checkout命令主要是把历史某个版本检出到工作
    区。慎用
    git reset HEAD
    暂存区的目录树被版本库里的内容重置,但是工作区不受影响。放弃之前git add的提交。
    git reset --hard SHA1号/HEAD
    工作区和暂存区的目录树被版本库里的内容重置。放弃之前git add和个git commit的提交。
    git rm file.txt
    删除文件
    git blame file.txt
    查看文件提交历史信息,方便定位bug
    git show-ref
    查看所包含的引用
    git merge
    进行合并操作
    git push -u origin master
    向远程版本库origin的master分支提交
    git pull
    把远程版本库的master分支拉到本地,数据同步服务器端
    git tag -m "my first tag" mytagv1.0
    制作里程碑
    git cat-file tag mytagv1.0
    查看mytagv1.0提交信息
    git tag -l -n1
    查看所有tag,n1显示一行信息
    git tag -d mytagv1.0
    删除tag
    git branch newbranch
    创建分支
    git checkout newbranch
    切换到newbranch分支
    git branch -d newbranch
    删除分支,如没合并,则失败
    git branch -D newbranch
    强制删除分支
    git push origin :newbranch
    先删除本地分支,再删除远程版本库对应分支
    git show-ref
    查看本地引用
    git checkout -b hello-1 origin/hello-1
    创建跟踪远程分支的本地分支,随后可以pull和push远程分支
    git remote add new-remote file:///path/hello-1.git
    创建远程版本库
    git remote -v
    查看远程版本库

     

     github协作开发GitHub(网址 https://github.com/)是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub

    github地址:

    https://github.com/
    

     创建帐号

     

    创建项目
      1.创建项目
      2.下载项目

    1. 网页下载zip文件
    2. git clone https://github.com/xwpfullstack/itcast.git
    

      linux终端配置

    1 配置环境
    设置系统全局用户

    Global setup:
    git config --global user.name "Your Name"
    git config --global user.email xwp_fullstack@163.com

    每个项目也可以单独在配置文件里设置用户

    vim .git/config
    

      查看环境配置

    git config -l
    

      删除全局配置

    git config --unset --global user.name
    git config --unset --global user.email
    

      

    ssh配置
    1.生成ssh-key,在终端下执行以下命令

    itcast$ ssh-keygen
    ~/.ssh/id_rsa是私钥文件
    ~/.ssh/id_rsa.pub是公钥文件

    2.把公钥上传到github上


    配置好ssh公钥后,在终端下执行以下命令

    ssh -T git@github.com Hi gotgithub! You've successfully authenticated, but GitHub does not provide shell access. 出
    现上述提示证明配置好ssh

    .ssh-key的作用
    用户命令行下提交代码时不需要再输入账号和密码,默认https协议是需要输入的
    修改项目中./git/config文件,把url换成 url = git@github.com:注册名/项目名.git
    例如: url = git@github.com:xwpfullstack/test.git

    第一个项目

    1 新建空项目
    先在github页面创建一个项目world

    git clone https://github.com/xwpfullstack/world.git
    cd world
    echo "world"" >> README.md
    git add README.md

     git commit -m "first commit"
     git remote add origin https://github.com/xwpfullstack/world.git
     git push -u origin maste

    把一个已经存在的git管理的项目放到github上托管

    git remote add origin https://github.com/xwpfullstack/world.git
    git push -u origin master
    

      

    下载项目
    三种下载方式:

    https协议下载
    git clone https://github.com/username/test.git
    Git-daemon协议下载
    git clone git://github.com/username/test.git
    打包下载
    

     

     分支

     

    git branch -a
    查看所有分支,含远程
    git branch
    查看本地分支
    git branch -r
    查看远程分支
    git branch newbranch
    创建新分支
    git branch -d oldbranch
    删除分支oldbranch
    git push origin newbranch
    把新分支同步到远程仓库
    git push origin :oldbranch
    删除远程oldbranch分支
    git checkout -b newbranch
    切换到另一分支,如果不存在则创建
    git checkout branch
    切换到另一分支
    git clone新项目时
    无论当前项目在什么分支,都是下载默认master分支
    git checkout master
    git merge anthorbranch
    git push origin maste
    合并开发分支到master分支
    git pull尽量少使用,隐含了合并信息
    get featch 下载远程origin/master更新
    git diff master origin/master
    查看本地和远程库的区别
    get merge origin/master
    合并远端更新到本地
    

      

    tag
    tag

    git tag v1.0 -m "tag v1"
    创建一个标签
    git push origin --tags
    把所有标签同步到远程库
    git checkout v1.0
    检出v1.0版本
    git reset --hard v1.0
    使代码重置,回到v1.0。此功能慎用,后开发的代码会丢失
    git tag -d v1.0
    删除标签v1.0
    git push origin :v1.0
    删除远程库里标签
    git tag -l -n1
    查看所有tag
    

      


     HEAD
    HEAD

    指向当前提交点,游标指针
    HEAD^ 上次提交点,父提交点
    git checkout HEAD^
    切换到上次提交点,不在分支
    git reset --hard HEAD^
    撤销本次提交,恢复到上次提交状态,新创建的文件会丢弃
    4.5.7 忽略监控文件
    .gitignore一般把.o和临时文件设置进去,忽略代码监控,如某项目.gitignore:
    #过滤数据库文件、sln解决方案文件、配置文件
    *.mdb
    *.ldb

    *.sln
    *.config

    #过滤文件夹Debug,Release,obj
    Debug/
    Release/
    obj/

    然后调用git add. ,执行 git commit即可。
    问题:.gitignore只适用于尚未添加到git库的文件。如果已经添加了,则需用git rm
    移除后再重新commit。

  • 相关阅读:
    二分类下的混淆矩阵
    多项式的回归
    使用变换来提升单回归准确度的一个反例
    使用OpenOffice.org将各类文档转为PDF
    22 Best Sites To Download Free Sprites
    给Libgdx的ShapeRenderer开启抗锯齿
    How get a String Width in Libgdx?
    JS实现IE下打印和打印预览
    spring-mvc不拦截静态资源的配置
    This Android SDK requires Android Developer Toolkit version 23.0.0 or above
  • 原文地址:https://www.cnblogs.com/bwbfight/p/9798138.html
Copyright © 2020-2023  润新知