git(3)

来源:互联网 发布:asp.net源码下载 编辑:程序博客网 时间:2024/06/18 05:46

1. 建立和远程库的连接

​ 需要先在本机设置好SSH,以及在github上账户设置对应的公钥
​ 建立和远程库链接连接

git remote add origin (git/https地址)

​ 进行推送,将本地库内容更新到远程库

git push -u origin master
1.  -u参数是第一次推送时需要的,之后在push就不用加了2.  这里分支名是使用的master,也可以替换成需要的指定的分支名

2. 克隆仓库

git clone (git/https地址)

需要输入github的用户名和密码

3. 本地分支管理

git checkout -b nodejs       //创建名字为nodejs的分支,并且切换到该分支//上面这条命令等价于下面的两条语句git branch nodejs           //创建nodejs分支git checkout nodejs         //切换到nodejs分支//查看所有的分支git branch//删除某一分支git branch -D nodejs

4. 合并分支

git merge nodejs   //合并nodejs到当前分支

5. Git冲突及解决

分为两种情况

  1. 本地仓库下 当前分支和目标分支都对某一文件的统一部分做了修改,会发生冲突(修改了不同的部分是不会冲突的,git会实现faster forward方式合并分支),

    可以使用cat查看文件,git为我们把冲突的部分标识了出来
    这里写图片描述
    这时候就需要我们手动修改冲突的部分,决定需要做出那部分的真正修改,在当前分支做好修改提交以后再把目标分支合并进来就可以了

  2. 远程仓库下 我们本地仓库push到origin remote的时候与远程库版本不同(在我们提交之前有别人对同一部分做了修改),发生了冲突这时候我们就需要先pull同步本地库和远程库的信息


    git pull

    之后就和第一步一样解决冲突确定好修改以后,再合并提交,push到远程仓库

6. 使用–no-f

在Fast forward模式下,删除分支后,会丢掉分支信息
所以我们使用

$ git merge --no-ff -m "merge with no-ff" nodejs
这样会在merge的时候生成生成一个commit信息,从分支信息里面也能查到合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。
0 0
原创粉丝点击