zoukankan      html  css  js  c++  java
  • GIT的方法,重要

    git remote 命令用来管理远程仓库

    git remote add 添加远程仓库(实质上是添加远程仓库 URL 的别名)

    git remote add origin https://github.com/xiaohigh/test2.git

    git push

    git push 将本地仓库的某个分支推送到远程仓库

    git push -u origin master
    • -u 关联(第一次加 u 之后建立分支链接, 后续可以直接使用 git push 进行提交)

    • origin 远程仓库的别名(可以推送小名,也可以推送https地址或者ssh地址)

    • master 本地的分支名

    • git remote -v   查看与github 建立的仓库连接地址

    clone 与 pull

    • clone 是将整个仓库的内容都下载回来(第一次),下载到本地master,  创建本地分支dev,远端代码也会保存在分支dev中

    • pull 是对指定的分支内容进行拉取(以后每次都可以pull),在本地master拉取远端代码后, 分支dev没有出现更新的代码, 需要在分支dev中, git merge master合并本地master代码

    • 关于克隆. 一定要在一个非Git仓库的文件夹下进行,不然造成命令失效

    git restore --staged 将暂存区的文件移除
    git restore index.txt 将工作区修改的文件撤销

    git remote -v   查看github 的关联地址

    将远端仓库的https地址或者ssh地址的地址添加个小名 ; git remote add nicen git@github.com:h5c3-team/zhuzhi.git  或者 git remote add nicen   https://github.com/xiaohigh/test.git

    git commit -m '注释内容'  ,必须是英文的引号

     

    关于分支污染情况

    情况一;master之前提交过1.txt, 然后在创建dev分支, 那么此时dev会有1.txt文件,正常情况
    情况二; master中,已经创建dev分支,然后在master中创建了一个文件2.txt,没有提交本地仓库 
    那么此时dev中也会有2.txt文件,此时污染了分支dev(如果msater提交了本地仓库,dev中就不会有2.txt了,就不会污染了)

    每次在切换分支前,需要提交一下当前分支

    如果当前分支修改文件,每次在切换分支前,需要提交一下当前分支,因为当前分支文件没提交,会自动在其他分支也会产生.
    如果当前分支提交了,则其他的分支就不会产生修改的文件,则各个分支互相独立

    关于冲突问题

    成员一从远端master分支pull拉取了代码到本地master,切换到了分支dev1,合并代码到分支dev1(git  merge master),修改了1.html,然后提交(add , commit)到本地仓库,
    合并到本地maser(git merge dev1), 然后在提交下 add, commit ,push推送到远端仓库了.

    成员二,从远端拉取了代码到本地master,切换到了主分支dev2,合并代码到分支dev2(git  merge master),修改了1.html,然后提交到本地仓库,
    合并到本地maser,此时需要跟新pull远端代码,  但是此时产生冲突,   
    解决冲突方法,如果分支没用的修改代码可以删除,然后 add和commit,  如果有用(两者修改的),直接add和commit,然后push推送到远端仓库,冲突解决了

    成员协作

    成员协作,创建一个协作远端仓库(需要给成员write权限),成员一git push origin master(将代码推送到远端),然后
    成员二要获取远端代码,git clone https://github.com/xiaohigh/test2.git (克隆仓库的地址)
    然后他修改了代码并git push到远端后,如果成员一以要获取更新的代码, git pull origin master (拉取远端的代码)

    每次push代码到远端,都先pull下

    如果成员一修改了文件,推送到远端,而成员二,也修改了文件和提交本地仓库了,此时push不了远端,会报错,此时
    成员二需要将远端的文件pull下,将远端的代码更新到本地,然后再push下,推到远端
    (pull后,会进入vim模式,直接:wq 保存退出即可)

    关于https地址推送,git有缓存密码机制,但是有缺陷

    ssh地址推送,是不需要密码的,需要在github配置下

    如何将之前clone(https)的方式改成ssh方式提交呢(可以push时不需要密码)

    1. 获取本地和远端连接的地址             git remote -v
    2. 将ssh的地址添加个别名nicen,            git remote add nicen git@github.com:h5c3-team/zhuzhi.git
    3.然后第一次本地修改代码后,push到远端             git push -u  nicen  master(此时是免密推送)
    4.然后第二次本地修改代码后,push到远端            git push (即可),一般不推荐简写  git push  nicen master 

    clone远端仓库代码的两种方式

    两种方式clone远端代码,
    第一种是,git clone  https://github.com/h5c3-team/zhuzhi.git   index      (  https地址,后面可以跟个参数,文件夹名称),需要输入账号密码(git有密码缓存机制,也不用输入密码,但是push远端需要密码)

    从git远端下载分支代码

    git clone -b branchname https://github.com/licanhui2/growup.git
    命令格式如上,-b后面接分支名,最后是git地址。


    第二种, git  clone   git@github.com:h5c3-team/zhuzhi.git   item         (ssh地址,后面可跟参数,文件夹名称),需要配置免密登录,以后拉取代码免密

    git工作流程

    第一次:
    1.得到 Git 远程仓库的地址和账号密码,将代码克隆到本地(地址换成自己的),              git clone https://github.com/xiaohigh/test.git
    2.切换分支dev,               ( 切换分支前需要master主分支先commit下, 以免一些文件会污染分支)  ,git checkout -b dev(创建并切换到分支), 然后本地分支和远程分支关联
    3.开发代码
    4.分支dev本地提交,           git add -A(添加到暂存区)     git commit -m '注释内容'(提交到本地仓库)
    5.合并到主分支              git checkout master(切换到主分支)     git merge dev(将分支dev合并到主分支)
    6.更新本地代码,         git pull origin master(如果不从远端跟新代码,直接push会报错)
    7.提交代码,推送到远端分支          git push (将本地仓库代码推送到远端仓库), 但是不推荐简写, git push  origin master,  或者推送到远端分支, git push origin 分支名

    第二次;
    1. 更新代码,        git pull  origin master(拉取远端代码), 在本地master拉取
    2. 切换分支,          (       切换分支前需要master主分支先commit下, 以免一些文件会污染分支)git checkout dev,合并主分支最新的代码 git  merge master
    3. 开发功能
    4. 提交                      git add -A(添加到暂存区)     git commit -m '注释内容'(提交到本地仓库)
    5. 合并分支 ,            git checkout master,    git merge xiaohigh
    6. 更新代码              git pull (如果不从远端跟新代码,直接push会报错)
    7. 提交代码,推送到远端分支              git push (将本地仓库代码推送到远端仓库)  但是不推荐简写, git push  origin master, 或者推送到远端分支, git push origin 分支名

     然后gitbug的远端各个分支合并到master, 然后本地master再去拉取远端master分支的最新代码

  • 相关阅读:
    Android 3.0 r1 API中文文档(108) —— ExpandableListAdapter
    Android 3.0 r1 API中文文档(113) ——SlidingDrawer
    Android 3.0 r1 API中文文档(105) —— ViewParent
    Android 中文 API (102)—— CursorAdapter
    Android开发者指南(4) —— Application Fundamentals
    Android开发者指南(1) —— Android Debug Bridge(adb)
    Android中文API(115)——AudioFormat
    Android中文API(116)——TableLayout
    Android开发者指南(3) —— Other Tools
    Android中文API (110) —— CursorTreeAdapter
  • 原文地址:https://www.cnblogs.com/fsg6/p/13043675.html
Copyright © 2011-2022 走看看