• git常用命令,冲突


    使用多个仓库
    git push cangkuming fenzhiming
    删除远程仓库
    git push 远程仓库名 :删除目标分支    # 需要先删除本地目标分支


    git pull <远程主机名> <远程分支名>:<本地分支名> //取回远程主机某个分支的更新,再与本地的指定分支合并。

    使用Git下载指定分支命令为:git clone -b 分支名仓库地址

    Git常用命令 工作区(file) --> git add file(暂存区) --> git commitf -m 'x'(版本库) mkdir itsgit 创建也个git管理用的版本库 cd itsgit git init 将该目录变成git能够管理的仓库 将需要管理的文件添加到仓库里 git add filename,filename2 --将工作区文件放入暂存区 git commit -m '说明' --一次性把暂存区的所有修改提交到分支(master)HEAD指向master。 git log 查看历史记录 git log --pretty=oneline 版本回退 上一个版本就是HEAD^,上上一个版本就是HEAD^^, 当然往上100个版本写100个^比较容易数不过来,所以写成HEAD`100 git reset --hard HEAD^ 多返回了版本 只要还知道commit id git reset --hard id git reflog用来记录了每一次commit id git怎样跟踪file git跟踪并管理的是修改,而非文件。 执行: 修改file --> git add file --> 再次修改file --> git commit git diff HEAD -- file 查看版本库最新file和工作区file的区别 git在这个过程只记录了第一次修改的内容,第二次将不会记录,如果版本回退在跳回来,第二次修改的内容会丢失 git放弃修改 1.仅仅工作区的修改时,用命令git checkout -- file 2.工作区修改后,并add到暂存区 先git reset HEAD file(文件到了add之前在工作区的状态),在执行上述第一点 3.并且commit了,使用版本回退功能 删除文件 工作区 rm file ;版本库 git rm file .可以放弃删除,by git reset HEAD file and git checkout file 在工作区失误删除了file(前提该file存在暂存区或版本库) git checkout file
    查看当前分支
    git branch

     -- 本地库连接远程库

    提交到远程仓库  git分布式版本库  

    远程仓库Github
    git init 初始化本地项目
    git add projiect
    git commit -m 'say something'
    git remote add `anyname` https://github.com/tangpinggui/oasystem  连接远程仓库
    git push -u `anyname` master  第一次提交
    git push 以后提交 or 多个仓库不同分支 git push anyname A:B A:本地分支名 B:远程分支名

    git push -u origin master报错  是因为 版本内容不同步

    To https://github.com/tangpinggui/oasystem.git
     ! [rejected]        master -> master (fetch first)
    error: failed to push some refs to 'https://github.com/tangpinggui/oasystem.git'
    hint: Updates were rejected because the remote contains work that you do
    hint: not have locally. This is usually caused by another repository pushing
    hint: to the same ref. You may want to first integrate the remote changes
    hint: (e.g., 'git pull ...') before pushing again.
    hint: See the 'Note about fast-forwards' in 'git push --help' for details.
    (tornado1) pyvip@Vip:~/oasystem$ git remote add origin git@github.com:tangpinggui/oasystem.git
    fatal: remote origin already exists.

    解决方法:

    git pull --rebase origin master  同步远程文件
    或者:
    git pull origin master --allow-unrelated-histories
    
    git merge origin/master
    
    git push -u origin master
      -- 先创建远程库在克隆远程库
    git clone https://github.com/tangpinggui/remotelibrary   克隆版本库 ,成功后就有了这个 remotelibrary 目录
     
     
    创建分支:

    创建与合并分支


    版本回退里,你已经知道,每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支。截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即master分支。HEAD严格来说不是指向提交,而是指向mastermaster才是指向提交的,所以,HEAD指向的就是当前分支。

    一开始的时候,master分支是一条线,Git用master指向最新的提交,再用HEAD指向master,就能确定当前分支,以及当前分支的提交点:

    之前状态:

    git-br-initial‘                  

     创建dev分支
    git checkout -b dev
     
     
     
     
    创建之后:Git新建了一个指针叫dev,指向master相同的提交,再把HEAD指向dev,就表示当前分支在dev上。再次commit时,则指针dev移动,master则不移动
    加入修改了某个文件,并且commit。它则被 dev记录
    这时跳回master,修改内容消失。说明master指针未移动,在次转回dev,内容还在。
    git checkout master
    git-br-create
    完事后在合并指针,将dev工作成果合并到master   ps:需要去到 git checkout master分支 在执行合并
     git merge dev
     合并完成后删除dev   git branch -d dev
     
    --------------------------------------------------------------------------------------

    查看分支:git branch

    创建分支:git branch <name>

    切换分支:git checkout <name>

    创建+切换分支:git checkout -b <name>

    合并某分支到当前分支:git merge <name>

    删除分支:git branch -d <name>

     
    ex: 一个简单的分支合并思路
    1. master
    commit1 - commit2 - commit3 - commit4 - commit5
    2.checkout newbrabch 新的分支在master commit创建,并新增功能
    commit2 - newcommit1
    3.将newcommit1和commit5合并
    首先checkout commit5
    然后marge into current, 如果只是单纯的增加了代码,那么会直接合并。如果是修改了代码,需要手动选择应该留下的代码
     
     另外在git init的目录下创建 .gitignore文件。
    在该文件可以申明不追踪的目录,比如 加入 static/
     
     
  • 相关阅读:
    Open vSwitch使用案例扩展实验
    hdoj-1233-还是畅通工程
    DS实验题 Floyd最短路径 & Prim最小生成树
    DS实验题 Missile
    Mininet实验 基于Mininet实现BGP路径挟持攻击实验
    Gift for GS5
    Bellman-Ford算法
    pox目录中的交换机mac地址学习模块 l2_multi源码
    Mininet实验 使用l2_multi模块寻找最短路径实验
    Ubuntu安装Flash
  • 原文地址:https://www.cnblogs.com/tangpg/p/8944217.html
Copyright © 2020-2023  润新知