zoukankan      html  css  js  c++  java
  • github相关

    github对我而言就是一个学习资料管理仓库,在此记录下个人平时使用git所遇到的一些问题及使用到的一些命令。

    一、安装git

      http://msysgit.github.com/ 下载安装windows 64位版本(根据个人电脑)

    二、设置git的用户名和邮箱(github网站的用户名和邮箱地址)

      git config --global user.name "myname"  设置用户名

      git config --global user.email "myemail" 设置邮箱

    设置之后,可用git config --list 查看配置列表 

    三、配置SSH(本地库和github网站远程库建立连接上传更新文件的权限通过秘钥来确定,也就是确定推送数据是不是本人)

      1.查看是否已经有了ssh密钥:cd ~/.ssh
        如果没有密钥则不会有此文件夹,有则备份删除
      2.生成密钥:$ ssh-keygen -t rsa -C "邮箱地址例如:123@qq.com"  按3个回车,密码为空

      3.ssh测试 $ ssh -T git@github.com

    C盘/user/用户名/.ssh隐藏文件夹里面有两个文件:id_rsa(私钥) 和 id_rsa.pub(公钥)

    复制id_rsa.puh里面的内容,在已登录的github网站上 settings->ssh->粘贴进去生成。

    四、github网站创建新的版本库,并建立本地库和远程库连接(通过clone或者 $ git remote add origin url) url为版本库的SSH地址或者HTTP地址 用SSH地址,推送更新数据不用验证用户名密码。

    git remote -v 检测版本库建立

    git init 初始化本地库

    git pull origin master 更新远程仓库到本地库

    git add .. 文件添加到缓存区

    git commit - m '注释'  提交

    git push -u origin master  推送到远程仓库

    五、一些提交、更新的操作指令

    git clone url 克隆github网站上项目
    git config --global user.name "liuwei9413" 设置贡献者名称
    git config --global user.email "570366990@qq.com" 设置邮箱
    git init 在某个文件夹内初始化git
    git status 查看当前项目文件的状态
    git add demo.html 提交文件到暂存区
    git add . 提交所有文件到暂存区
    git commit 暂存区->版本库
    git commit -m "此处为注释"
    git commit -a -m "注释" 直接从工作区提交到版本库
    git log 操作日志 如果日志过多只显示部分 按enter键可继续查看 退出查看按q键
    对比:
    git diff 工作区--暂存区对比
    git diff -- cached 暂存区--版本库对比
    git diff master 工作区--版本库对比
    撤销:
    git reset HEAD demo.html 从暂存区撤回工作区
    git checkout -- demo.js 工作区撤回到版本库状态(回退)
    git commit -m "注释" --amend 暂存区多个文件只提交部分到版本库 回退上一次提交 并一次提交暂存区所有文件
    删除:
    git rm demo.js 删除暂存区文件(前提是工作区文件已经手动删除)
    git rm -f demo.js 同时删除工作区和缓存区文件
    git rm --cached demo.js 删除缓存区文件(保留工作区文件)
    恢复
    git checkout commit_id filename 恢复某个文件到指定版本
    git reset --hard commit_id 恢复到指定版本
    git reflog 查看所有版本id 用于返回最新版本
    同步到远程仓库
    git remote 查看远程仓库名(克隆时自带仓库名)
    git remote -v 查看远程仓库名+对应仓库地址
    git remote rm 远程仓库名 删除远程仓库
    git push origin(仓库名) master(分支名) 同步到远程仓库
    多人协作解决冲突(每次开发先同步更新代码)
    git fetch (从远端同步手动合并) 先查看冲突,能查看到冲突细节
    git diff master origin/master
    git merge origin/master
    git pull (从远端同步直接合并)
    开源项目协作
    1.fork到自己github版本库 下载到本地作修改
    2.pull request 到项目管理人
    分支处理
    git branch 查看分支
    -d new1 删除new1分支
    --merged 查看当前分支的合并分支
    --no-merged 查看分支未合并的分支
    git branch new1 本地创建分支
    git checkout new1 本地切换分支

    git push origin <新分支名字> 上传本地分支到远程仓库

    git push origin :<新分支名字> 删除远程分支

    git checkout -b new2 创建分支并切换到该分支
    git merge new1(在master分支下) 快速合并分支master和new1
    添加标签 tag
    git tag v1.0 创建标签
    git push origin v1.0 同步标签到远程仓库

    操作过程种偶尔会遇到些奇怪的问题,不要着急,百度自然能解决。

  • 相关阅读:
    JAVA SE 基础复习-虚拟机
    不错的博客
    如何分析问题
    由Contains开始的
    相关有用链接
    C++语法一二
    关于论文的些许想法
    C++中一些容易迷惑的语法点总结
    android中各种组件的生命周期问题
    android开源框架thinkinandroid相关研究
  • 原文地址:https://www.cnblogs.com/lw9413/p/4800944.html
Copyright © 2011-2022 走看看