zoukankan      html  css  js  c++  java
  • git 进阶篇

    在git使用时,有时需要在公司内部搭建自己的git服务器,用于内部的版本控制。

    从远程服务器到本地

    先创建服务器端的空git库,将其clone到本地,再将本地的修改push到服务器端

    # step1:
    git init --bare sample.git      # 在服务器上创建空的git版本库
    chgrp 用户名 文件名 -R           # ubuntu系统上有时,用户与组需要更改
    chown 用户名 文件名 -R           
    # setp2:
    git clone git@10.10.10.10:/home/git/sample.git     # clone 空的git库到本地
    # step3:
    # 由于远程库是空的,我们第一次推送master分支时,加上了-u(--set-upstream)参数,git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令
    git push -u origin master 
    

    从本地到远程服务器

    # setp1: 本地初始化一个git仓库
    git init         
    # step2: 将远程与本地建立连接
    git remote add origin git@10.10.10.10:/home/git/sample.git
    # step3: 假设本地分支为dev,远程无此分支,现需要在远程新建此分支
    git push --set-upstream origin dev
    

    远程分支与本地分支 常用关系

    场景1:已有本地分支,需要创建对应的远程分支

    # dev为本地分支,但远程没有。指令可以自动在远程创建一个dev分支,并被本地dev分支track
    git push --set-upstream origin dev 
    

    场景2:已有远程分支,需要创建对应的本地分支

    # dev为远程分支,但本地没有。指令可以自动在本地创建一个dev分支,并track远程dev分支
    git checkout --track origin/dev
    

    场景3:已有本地分支和远程分支,让它们建立track

    # dev_local 与 dev_remote分支 自动实现track
    git branch --set-upstream-to=origin/dev_remote dev_local
    

    常用指令

    log相关

    git log # 显示提交日志
    git log --pretty=oneline #输出日志按行显示
    

    远程分支相关

    为一个项目添加多个远程仓库

    git remote add github https://github.com/xxx/sample.git
    

    查看远程仓库信息

    # 查看名为 origin 的远程仓库
    git remote show origin
    git remote -v                # 列出remote的一些信息
    

    删除远程仓库

    # 删除名为 origin 的远程仓库
    git remote rm origin 
    

    为名为 origin 的远程仓库,添加两个url,从而一次push,可以推送到多个远程仓库。 修改.git/config文件中内容

    [remote "origin"]
        url = https://gitee.com/xxx/sample.git
        url = https://github.com/xxx/sample.git
        fetch = +refs/heads/*:refs/remotes/origin/*
    

    分支相关

    git branch -vva           # 查看远程与本地分支
    
    git branch new_branch    # 新建一个分支,必转到新分支
    git checkout new_branch
    
    git checkout -b new_branch    # 与楼上功能相同
    

    push相关

    查看分支的 upstream 命令

    git config --get branch.<分支名>.remote
    

    设置分支的 upstream

    # push时加上-u 或 --set-upstream
    git push -u origin master
    # 显示设置 
    git branch -u orgin/master
    git branch --set-upstream-to=origin/master mster
    

    删除分支的 upstream

    git branch --unset-upstream
    

    git pull 相关

    若是有报错:
    refusing to merge unrelated histories
    执行
    git pull origin master --allow-unrelated-histories
    实现pull

    git pull 
    # 等同于下面两条指令
    git fetch
    git merge FETCH_HEAD
    
    git pull origin master:brantest   # 将origin的master分支拉取过来,与本地的brantest分支合并
    git pull origin master  # 将远程分支与当前分支合并
    
    
  • 相关阅读:
    实验四 主存空间的分配和回收
    学期总结
    实验三 进程调度模拟程序
    团队项目
    博客参考评论
    dos系统
    学习进度条
    了解和熟悉操作系统
    问题的思考和回答
    Python-关于脚本和冒泡算法
  • 原文地址:https://www.cnblogs.com/qev211/p/14430903.html
Copyright © 2011-2022 走看看