美文网首页
git的simple点

git的simple点

作者: M_PI_4 | 来源:发表于2020-03-21 17:33 被阅读0次

    本部分主要包含:向源码方提交向自己GitHub创建的repository提交向远程私有库提交等涉及git命令的内容。
    Git常用代码参看链接。。

    一、向源码方提交

    1.注册git账号,成功后,请登录你的邮箱,进行激活。

    2.fork你要贡献源码的与项目,完成后,进入已fork的项目。

    3. 配置本地git环境(未配置点此)

    4.clone你fork的项目

    在任意目录下,使用命令fork自己的项目,即上文已经fork成功的项目地址为:https://github.com/GithubUserName/ProjectName (注意:GithubUserName这里应该改为你的用户名
    示例:

    git clone https://github.com/GithubUserName/RookieTomatoFM
    

    5. 添加远程仓库地址

    当我们完成上述“4”的clone动作后,可以使用如下命令,来查看你fork的远程仓库的地址

    git remote -v
    

    默认的clone操作完成后,远端仓库的地址别名为:origin,为了需要与原项目保持更新,你还需要将原项目地址给添加进来,使用如下命令可以添加远端仓库地址,其中upstream新的远端仓库的别名

    git remote add upstream  https://github.com/TargetNoBug/RookieTomatoFM
    

    6. 保持与原项目同步 (可选)

    Fork的项目有更新时,你可以通过以下命令来保持与项目同步:

    进入本地存放RookieTomatoFM项目的目录:依次执行下列命令:

      1. 从上游仓库fetch分支和提取点
    git fetch upstream
    
      1. 切换到本地分支(建议你切换下)
    git checkout master
    
      1. upstream/master分支合并到本地master
    git merge upstream/master
    
      1. upstream/master分支更新的内容更新到github中fork的项目上(从本地缓存库,提交至git远程库),就直接
    git push origin master
    

    7. 提交本地代码至github的fork上

    进入本地RookieTomatoFM目录,执行以下命令:

    git add .
    git commit -m "有效注释"
    git push
    即可将本地的代码更新到github的fork上了
    

    8. 将github的fork更新合并至主干

    访问github登录,进入你fork的,如下图所示发起merge请求,等待源项目方审核通过并且合并进源项目。


    示例项目.jpg

    二、向自己GitHub创建的repository提交

    1、cd到你的本地项目根目录下,再执行git命令

    cd /Users/FilePath/Desktop/RookieTomatoFM
    

    2、git本地仓库初始化

    git init 
    

    3、将本地项目的所有文件添加到暂存区中

    git add .
    

    4、将暂存区的文件提交到git本地仓库,双引号里面写注释语句 ("XXXX"表示本次提交的说明/注释)

    git commit -m "XXXX"
    

    5、将git本地仓库和Github远程仓库关联,在github中打开要上传项目的远程仓库,得到网址https://github.com/TargetNoBug/RookieTomatoFM

    git remote add origin https://github.com/TargetNoBug/RookieTomatoFM
    

    6、从远程仓库pull,获取远程仓库的文件到本地仓库

    git pull origin master
    

    注意: 第6步可能会git pull 失败 ,提示:fatal: refusing to merge unrelated histories,这个问题是因为两个根本不相干的git 库,一个是本地库,一个是远端库,然后本地要去推送到远端,远端觉得这个本地库跟自己不相干,所以告知无法合并,此时使用:

    `git pull origin master --allow-unrelated-histories`
    

    后面加上--allow-unrelated-histories,把两段不相干的分支进行强行合并。

    7、将代码由本地仓库上传到Github远程仓库(此处,可能我们会查看当前是否在master,使用命令:git check master

    git push -u origin master
    
    • 附加:

      1、注册trunk
      pod trunk register 'Github账户对应邮箱' 'Github账户对应用户名' --verbose
      2、查看注册信息
      pod trunk me
      3、验证.podspec文件
      pod lib lint
      (有WARN则需用 pod lib lint --allow-warnings
      4、验证通过无ERROR
      pod trunk push RookieTomatoFM.podspec
      (有WARN则需用 pod trunk push RookieTomatoFM.podspec --allow-warnings
      5、查看某个pods信息
      pod trunk info RookieTomatoFM
      6、删除pods的某个版本
      pod trunk delete RookieTomatoFM 0.0.1
      7、添加其他pods维护者
      pod trunk add-owner 仓库名 邮箱

    注:修改name等信息

    …………………………………………………………………………………………
    1、pod查看版本号
    pod --version

    2、pod升级更新
    sudo gem install cocoapods --pre
    注意:当你升级遇到以下报错时,使用
    sudo gem install cocoapods -n /usr/local/bin
    报错:
    ERROR: While executing gem ... (Gem::FilePermissionError)
    You don't have write permissions for the /usr/bin directory.

    3、pod库更新

    `pod repo update`
    

    三、git小细节 (更多git细节点击

    Git 可以给仓库历史中的某一个提交打上标签,以示重要。 比较有代表性的是人们会使用这个功能来标记发布结点( v1.0v2.0等等)。

    1. 列出已有的标签

    在 Git 中列出已有的标签非常简单,只需要输入 git tag(可带上可选的 -l选项 --list):

    $ git tag
    v1.0
    v2.0
    

    git tag命令以字母顺序列出标签,但它显示的顺序并不重要。
    你也可以按照特定的模式查找标签。 例如,Git 自身的源代码仓库包含标签的数量超过 500 个。 如果只对 1.8.5 系列感兴趣,可以运行:

    $ git tag -l "v1.8.5*"
    v1.8.5
    v1.8.5-rc0
    v1.8.5-rc1
    v1.8.5-rc2
    v1.8.5-rc3
    v1.8.5.1
    v1.8.5.2
    v1.8.5.3
    v1.8.5.4
    v1.8.5.5
    

    tips:

    • 按照通配符列出标签需要 -l 或 --list 选项
      如果你只想要完整的标签列表,那么运行 git tag 就会默认假定你想要一个列表,它会直接给你列出来, 此时的 -l 或 --list 是可选的。
    • 然而,如果你提供了一个匹配标签名的通配模式,那么 -l 或 --list 就是强制使用的。

    2. 如何创建和删除新的标签

    • Git 支持两种标签:轻量标签(lightweight)与附注标签(annotated)。

    • 轻量标签很像一个不会改变的分支——它只是某个特定提交的引用。

    • 附注标签是存储在 Git 数据库中的一个完整对象, 它们是可以被校验的,其中包含打标签者的名字、电子邮件地址、日期时间, 此外还有一个标签信息,并且可以使用 GNU Privacy Guard (GPG)签名并验证。 通常会建议创建附注标签,这样你可以拥有以上所有信息。但是如果你只是想用一个临时的标签, 或者因为某些原因不想要保存这些信息,那么也可以用轻量标签。

    附注标签:
    最简单的方式是当你在运行 tag 命令时指定 -a 选项:

    $ git tag -a v1.4 -m "my version 1.4"
    $ git tag
    v0.1
    v1.3
    v1.4
    

    -m 选项指定了一条将会存储在标签中的信息。 如果没有为附注标签指定一条信息,Git 会启动编辑器要求你输入信息。

    通过使用 git show 命令可以看到标签信息和与之对应的提交信息:

    $ git show v1.4
    tag v1.4
    Tagger: Ben Straub <ben@straub.cc>
    Date:   Sat May 3 20:19:12 2014 -0700
    
    my version 1.4
    
    commit ca82a6dff817ec66f44342007202690a93763949
    Author: Scott Chacon <schacon@gee-mail.com>
    Date:   Mon Mar 17 21:52:11 2008 -0700
    
        changed the version number
    

    输出显示了打标签者的信息、打标签的日期时间、附注信息,然后显示具体的提交信息。

    轻量标签
    另一种给提交打标签的方式是使用轻量标签。 轻量标签本质上是将提交校验和存储到一个文件中——没有保存任何其他信息。 创建轻量标签,不需要使用 -a、-s 或 -m 选项,只需要提供标签名字:

    $ git tag v1.4-lw
    $ git tag
    v0.1
    v1.3
    v1.4
    v1.4-lw
    v1.5
    

    3. 不同类型的标签分别是什么

    参考链接

    https://www.jianshu.com/p/bed0df7fbfc4
    https://www.jianshu.com/p/52d7c6cb7b35

    相关文章

      网友评论

          本文标题:git的simple点

          本文链接:https://www.haomeiwen.com/subject/jdquyhtx.html