zoukankan      html  css  js  c++  java
  • GitHub的初级使用

    最近准备学习一个GitHub的使用

    一、账号创建

    1.百度找到GitHub官方网站(https://github.com/ )

    2.点击Sign up注册GitHub账号

       

    下图为注册页面

    第一步:填写账号邮箱密码,点击create an account 进入下一步,系统会向你填写的邮箱发送一封确认邮件,去登陆邮箱确认。

     

    第二步:保持默认,点击continue跳到下一步

     

    第三步:是问卷可选填,然后点击提交按钮,账号就注册成功了!

    二、创建应用

    1.点击右上角头像,选择settings

     

    2.选择Developer settings

     

    3.点击绿色按钮Register a new applications

     

    4.填写项目信息,完成后点击注册。

     

    5.完成项目注册,获取到Client ID 和 Client Secret

     

     二   在GitHub上创自己的项目仓库

    登录GitHub后 点击右面的 + 号  选择  new repository

    填写仓库信息

     在GitHub上创建文件

     

    选择克隆或者下载的路径

     三  搭建部署Git客户端并使用

    yum install git -y
    git config --global user.name "mmm"
    git config --global user.email "mmm@.com"
    useradd git -s /sbin/nologin

    创建客户端登录服务器的ssh秘钥

    [root@linux-node1 .ssh]# ssh-keygen -t rsa -C "mmm@.com"
    Generating public/private rsa key pair.
    Enter file in which to save the key (/root/.ssh/id_rsa):
    Enter passphrase (empty for no passphrase):
    Enter same passphrase again:
    Your identification has been saved in /root/.ssh/id_rsa.
    Your public key has been saved in /root/.ssh/id_rsa.pub.
    The key fingerprint is:
    SHA256:kZcs/suI/F6GEFmf+ZfSr+nt04XU0c3JEE5zVuJVgb0 muyongheng@228.com.cn
    The key's randomart image is:
    +---[RSA 2048]----+
    | . =B=@|
    | o + +oo+B+|
    | o + B ...o|
    | o + . ..E.|
    | . S o.+. |
    | . o o...|
    | . + +|
    | . . = . =.|
    | oo+ o .+.+|
    +----[SHA256]-----+

    把客户端的秘钥导入到GitHub服务器上

    为了验证是否成功,在git bash下输入

    ssh -T git@github.com

    如果是第一次的会提示是否continue,输入yes就会看到:You've successfully authenticated, but GitHub does not provide shell access 。这就表示已成功连上github。

    接下来我们要做的就是把本地仓库传到github上去,在此之前还需要设置username和email,因为github每次commit都会记录他们。

    git config --global user.name "mmm"
    git config --global user.email "mmm@.com."

    在Git客户端上执行操作

    在客户端上创建Git仓库的存放目录

    mkdir /opt/project
    cd /opt/project/

    把远程服务器上的版本仓库检出到客户端上

    git clone https://github.com/muyongheng/project.git

    工作流

    你的本地仓库由 git 维护的三棵"树"组成。第一个是你的 工作目录,它持有实际文件;第二个是 暂存区(Index),它像个缓存区域,临时保存你的改动;最后是 HEAD

    它指向你最后一次提交的结果。

    你可以提出更改(把它们添加到暂存区),使用如下命令

    新创建一个文件

    touch multilne.conf

    把文件添加到版本库中

    git add multilne.conf

    这是 git 基本工作流程的第一步;使用如下命令以实际提交改动


     git commit -m "add to project by 2019-04-02"


    现在,你的改动已经提交到了 HEAD,但是还没到你的远端仓库

    推送改动

    你的改动现在已经在本地仓库的 HEAD 中了。执行如下命令以将这些改动提交到远端仓库:
    git push origin master
    可以把 master 换成你想要推送的任何分支。 

    如果你还没有克隆现有仓库,并欲将你的仓库连接到某个远程服务器,你可以使用如下命令添加:
    git remote add origin <server>
    如此你就能够将你的改动推送到所添加的服务器上去了。

    在客户端上如果想刷新版本库的内容 (不是第一次连接服务器的版本库)

    git  pull 

     =-===================================================================

    分支

    分支是用来将特性开发绝缘开来的。在你创建仓库的时候,master 是"默认的"分支。在其他分支上进行开发,完成后再将它们合并到主分支上

    创建一个叫做"feature_x"的分支,并切换过去:
    git checkout -b feature_x
    切换回主分支:
    git checkout master
    再把新建的分支删掉:
    git branch -d feature_x
    除非你将分支推送到远端仓库,不然该分支就是 不为他人所见的
    git push origin <branch>

    查看目前所在哪个分支

    git status

    更新与合并

    要更新你的本地仓库至最新改动,执行:
    git pull
    以在你的工作目录中 获取(fetch) 并 合并(merge) 远端的改动。
    要合并其他分支到你的当前分支(例如 master),执行:
    git merge <branch>
    在这两种情况下,git 都会尝试去自动合并改动。遗憾的是,这可能并非每次都成功,并可能出现冲突(conflicts)。 这时候就需要你修改这些文件来手动合并这些冲突(conflicts)。改完之后,你需要执行如下命令以将它们标记为合并成功:
    git add <filename>
    在合并改动之前,你可以使用如下命令预览差异:
    git diff <source_branch> <target_branch>

    标签

    为软件发布创建标签是推荐的。这个概念早已存在,在 SVN 中也有。你可以执行如下命令创建一个叫做 1.0.0 的标签:
    git tag 1.0.0 1b2e1d63ff
    1b2e1d63ff 是你想要标记的提交 ID 的前 10 位字符。可以使用下列命令获取提交 ID:
    git log
    你也可以使用少一点的提交 ID 前几位,只要它的指向具有唯一性。

    替换本地改动

    假如你操作失误(当然,这最好永远不要发生),你可以使用如下命令替换掉本地改动:
    git checkout -- <filename>
    此命令会使用 HEAD 中的最新内容替换掉你的工作目录中的文件。已添加到暂存区的改动以及新文件都不会受到影响。

    假如你想丢弃你在本地的所有改动与提交,可以到服务器上获取最新的版本历史,并将你本地主分支指向它:
    git fetch origin
    git reset --hard origin/master

  • 相关阅读:
    mysql事务
    python zip dict函数
    有关mysql索引
    hash(散列函数)
    Docker使用
    Mac终端命令自动补全
    python序列化与反序列化(json与pickle)
    python txt、excel读写
    python 正则表达式
    python进行数据预处理-pandas
  • 原文地址:https://www.cnblogs.com/pyng/p/10643713.html
Copyright © 2011-2022 走看看