• git/github初级运用自如 (good)


    三 . 设置用户信息

    这一步不是很重要,貌似不设置也行,但github官方步骤中有,所以这里也提一下。

    在git中设置用户名,邮箱

    $ git config --global user.name "defnngj"//给自己起个用户名
    $ git config --global user.email "defnngj@gmail.com"//填写自己的邮箱

    在github中找到 Account Settings--->Account Admin ,找到一下信息:

    Your API token is e97279836f0d415a3954c1193dba522f ---keep it secret! Changing your password will

    generate a new token

    $ git config --global github.user defnngj      //github 上的用户名
    $ git config --global github.token e97279836f0d415a3954c1193dba522f

    http://www.cnblogs.com/hanxi/archive/2012/07/31/2616435.html

    本文只讲一件事:将一个本地维护的项目,转换为一个 Git 项目,并托管到 GitHub。

    总共以下几个步骤:

    一、 打开命令行终端,进入项目所在的本地目录,将目录初始化为一个 Git 项目

    $ git init
    此时会在目录中创建一个 .git 隐藏文件夹

    二、 将所有文件放进新的本地 git 仓库

    $ git add .
    如果你本地已经有 .gitignore 文件,会按照已有规则过滤不需要添加的文件。如果不想要添加所有文件,可以把 . 符号换成具体的文件名

    三、 将添加的文件提交到仓库

    $ git commit -m "Initial commit"
    四、 访问 GitHub

    有些时候可能要翻墙

    五、 创建一个新仓库

    为了避免冲突,先不要勾选 README 和 LICENSE 选项

    六、 在生成的项目主页上,复制仓库地址

    类似于 https://github.com/superRaytin/alipay-app-ui.git

    七、 回到命令行终端界面,将本地仓库关联到远程仓库

    $ git remote add origin https://github.com/superRaytin/alipay-app-ui.git
    可运行以下命令查看结果:

    $ git remote -v
    八、 提交代码到 GitHub 仓库

    $ git push origin master
    参考资料

    Adding an existing project to GitHub using the command line

    http://leonshi.com/2016/02/01/add-existing-project-to-github/

    对比git pull和git pull --rebase

    使用下面的关系区别这两个操作:
    git pull = git fetch + git merge
    git pull --rebase = git fetch + git rebase

    现在来看看git merge和git rebase的区别。

    假设有3次提交A,B,C。

    在远程分支origin的基础上创建一个名为"mywork"的分支并提交了,同时有其他人在"origin"上做了一些修改并提交了。

    其实这个时候E不应该提交,因为提交后会发生冲突。如何解决这些冲突呢?有以下两种方法:

    1、git merge
    用git pull命令把"origin"分支上的修改pull下来与本地提交合并(merge)成版本M,但这样会形成图中的菱形,让人很困惑。

    2、git rebase
    创建一个新的提交R,R的文件内容和上面M的一样,但我们将E提交废除,当它不存在(图中用虚线表示)。
    由于这种删除,小李不应该push其他的repository.rebase的好处是避免了菱形的产生,保持提交曲线为直线,让大家易于理解。


    在rebase的过程中,有时也会有conflict,这时Git会停止rebase并让用户去解决冲突,解决完冲突后,用git add命令去更新这些内容,
    然后不用执行git-commit,直接执行git rebase --continue,这样git会继续apply余下的补丁。
    在任何时候,都可以用git rebase --abort参数来终止rebase的行动,并且mywork分支会回到rebase开始前的状态。

    http://www.cnblogs.com/kevingrace/p/5896706.html
    http://stackoverflow.com/questions/33483716/merge-or-rebase-or-branch-default-in-android-studio-what-are-the-differences


    ***************当你发现自己的才华撑不起野心时,就请安静下来学习吧***************

  • 相关阅读:
    Mybatis中的设计模式
    Mybatis的#{}和${}的区别是什么?
    ES的写入速度优化
    康师傅JVM:垃圾回收相关概念(十六)
    i++为什么不是原子操作?
    Zookeeper的watch机制
    LeetCode 1.两数之和
    ESP 8266 引脚图
    Arduino 将 String 转化为 int
    微擎修改 icon.jpg 后项目主页未变
  • 原文地址:https://www.cnblogs.com/softidea/p/5448212.html
Copyright © 2020-2023  润新知