• Git持续总结


    阶段一:安装Git、创建代码仓库、提交本地代码

    安装:

    Ubuntu:sudo apt-get install git-core

    Windows:http://msysgit.github.io/  下载安装下一步即可

    创建代码仓库:

    1.配置身份信息——Git就知道是谁提交的了

      $ git config --global user.name "JLiang"

      $ git config --global user.email "j990499599@gmail.com"

      $ git config --global core.autocrlf false  ————Windows和Linux的换行符号不同

      出现警告warning: LF will be replaced by CRLF————Linux换行符号为LF,Windows换行符为CRLF

    2.获取身份信息——不指定即可

      $ git config --global user.name

      $ git config --global user.email

    3.给具体项目创建代码仓库

      $ cd /e/learnAndroid/DatabaseTest/    ——进入项目目录

      $ git init                ——创建代码仓库

      

      创建成功之后,会多一个.git的隐藏文件夹,通过ls-al命令可以查看

      $ ls -al

      

    提交本地代码

      $ git add .             ——将DatabaseTest目录所有文件都添加进去

      $ git commit -m "First commit"  ——提交并通过-m参数添加描述信息,且-m必须有

    阶段二:忽略文件、查看修改内容、撤销未提交的修改、查看提交记录

    忽略文件——.gitignore

    并不是所有文件都需加入到版本控制当中!!

    如bin目录和gen目录下的文件是自动生成的,这两个目录就不应该加入到版本控制当中,否则可能会对文件的自动生成造成影响!

    具体做法:

      1.在项目根目录下创建文件.gitignore  ————  vim .gitignore

      2.逐行写入不需要提交的文件路径  ——  注意vim编辑器的使用,按insert键就可以编辑了,按esc表示退出编辑,键入冒号":"再输入wq表示保存并退出

    过滤掉需要忽略的文件之后,常规提交代码即可

    补充一个删除命令:rm -rf <filename>  --  慎用

    补充一个查看内存命令:df

    查看修改内容——git status  git diff <src>

      $ git status      ——可以查看到哪些文件被修改了

      $ git diff         ——可以看到具体修改的地方

      $ git diff <文件路径>  ——查看具体某个文件修改的地方

      

      

      $ git diff res/layout/activity_main.xml  。。。

      

    撤销未提交的修改:checkout

    方式一:  

      $ git checkout src/com/example/providertest/MainActivity.java 

      刚刚修改的价格就被还原了!

      局限性在于:只适用于没有执行过 git add <...> 命令的文件 ,如果已经执行过add命令,该方式失效——通过git status 可以看到仍处于添加状态

    方式二:

      思路是,先撤销添加,在执行撤销操作

      $ git reset HEAD src/com/example/proviertest/MainActivity.java

      $ git checkout src/com/example/providertest/MainActivity.java 

    令人困惑的是:checkout 检出  —— 切糕还原大法?后续脑补

    查看提交记录:log

    在提交多次之后,想要查看每次提交所修改的内容,可以用log

      $ git log           ——会显示所有提交的概述

      $ git log <id> -1       ——只显示指定commit id的概述

      $ git log <id> -1 -p     ——显示指定id具体改动的内容

      

      

      

     阶段三:分支

     每发布一个版本时就创建一个分支,这样各个版本之间的影响不大

    查看分支:

    $ git branch -a

      

    发现只有一个master,签名有个*号   ===》  目前没有分支,只有主干线master,*表示目前所在的分支

    创建分支:

    $ git branch version1.0

      

    可以看到,成功创建了version1.0这个分支

    如果在version1.0这个分支上进行修改,提交代码,是不会影响到master的!!

    切换分支:

    $ git checkout version1.0

      

    可以看到,分支由master切换到了version1.0上

    删除分支:

    $ git branch -D version1.0

      

      

    可以看到,删除非当前"支"是可以正常执行的

    Git团队合作:

    基本流程:

      首先得有一个远程的版本库

      各个成员从这个版本库中获取原始代码——clone 

      $ git clone https://github.com/callerge/coolweather.git

      

      某成员完成了相应模块功能后,将代码同步到远程版本库——push —— git push origin master:将本地代码同步到服务器master分支上,会提示需要登录GitHub账号密码

      当然是需要先将代码提交到本地

      $ git push origin master

      

      可以将远程版本库的修改改同步到本地——fetch或pull

          git fetch 服务器地址 master ——将远程代码同步到本地,但不会合并,而是存放在分支:服务器地址/master 上,通过diff命名可以查看修改内容,通过git merge 服务器地址/master可以合并

          git pull 服务器地址 master —— 等于fetch+merge,获取最新代码并且合并在本地

    怎么生成公钥

    有了公钥之后,将公钥提供给第三方库的管理员,添加进去之后呢,就可以clone或者上传东西到别人的库了

    user01@client:$ ssh-keygen –t rsa

    此举会在/home/user01/.ssh/下生成私钥 id_rsa 和公钥 id_rsa.pub 文件。

    怎么关联远程分支

    先移除再关联即可

    user02@client:~/ 666$ git remote remove origin

    user02@client:~/ 666$ git remote add origin git@192.168.10.147: 666.git

    怎么创建分支并push到远程

    git checkout -b test_new_branch
    git push --set-upstream origin test_new_branch

  • 相关阅读:
    datatables 自定义排序
    nginx 高并发配置参数
    查看域名https证书到期时间
    Python七大原则,24种设计模式
    scrapy RuntimeError: maximum recursion depth exceeded while calling a Python object 超出python最大递归数异常
    scrapy 用pycharm调试
    修改Mysql 字符集,支持Emoji表情
    redis资料
    mysql 开启日志与性能调优
    python 版本号比较 重载运算符
  • 原文地址:https://www.cnblogs.com/erhai/p/4916701.html
Copyright © 2020-2023  润新知