使用多个仓库
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,就能确定当前分支,以及当前分支的提交点:

之前状态:

 创建dev分支
git checkout -b dev
 
 
 
 
创建之后:Git新建了一个指针叫dev,指向master相同的提交,再把HEAD指向dev,就表示当前分支在dev上。再次commit时,则指针dev移动,master则不移动
加入修改了某个文件,并且commit。它则被 dev记录
这时跳回master,修改内容消失。说明master指针未移动,在次转回dev,内容还在。
git checkout master
完事后在合并指针,将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/
 
 

git常用命令,冲突的更多相关文章

  1. git常用命令(持续更新中)

    git常用命令(持续更新中) 本地仓库操作git int                                 初始化本地仓库git add .                       ...

  2. Git 常用命令详解

    Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...

  3. Git常用命令总结

    Git常用命令总结 git init      在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个repo,并在当前文件夹下创建一个.git文件夹.   git clone ...

  4. Git 常用命令详解(二)

    Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...

  5. 【转】 Git 常用命令详解(二)----不错

    原文网址:http://blog.csdn.net/ithomer/article/details/7529022 Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如: ...

  6. git常用命令2

    一. Git 常用命令速查 git branch 查看本地所有分支git status 查看当前状态 git commit 提交 git branch -a 查看所有的分支git branch -r ...

  7. Git常用命令(转)

    目前开发的新项目使用的版本控制工具基本用的都是Git,老项目用的还是Svn,网上Git资源也很多,多而杂.我整理了一份关于Git的学习资料,希望能帮助到正在学习Git的同学. 一. Git 命令初识 ...

  8. Git 常用命令 更新与提交

    整理了一下Git 常用命令,这个版本还是比较好用的,最后附上个人终结版,帮助你快速上手. 取得Git仓库 初始化一个版本仓库 git init Clone远程版本库 git clone yourgit ...

  9. 总结自己的Git常用命令

    总结自己的Git常用命令 使用git也有一段时间了,把自己常用的命令用自己的描述记录起来,方便自己备忘也方便其他人参考. 目录: 最基本的命令: git clone 拷贝并跟踪远程的master分支. ...

随机推荐

  1. WinRAR的自解压模式 - imsoft.cnblogs

    一个 SFX (SelF-eXtracting)自解压文件是压缩文件的一种,它结合了可执行文件模块,一种用以运行从压缩文件解压文件的模块.这样的压缩文件不需要外部程序来解压自解压文件的内容,它自己便可 ...

  2. JSON-java

    import net.sf.json.JSONArray; import net.sf.json.JSONObject; JSONObject jsonObject1 = new JSONObject ...

  3. ZOJ 3211dream city dp(效率优化)

    Dream City Time Limit: 1 Second      Memory Limit:32768 KB JAVAMAN is visiting Dream City and he see ...

  4. 响应式有利于SEO还是pc+手机端分开url有利于SEO?

    一早上都在查这个问题,大家都来讨论一下. 首先,可以肯定的是,如果公司推广重在谷歌,要做响应式.但是对于百度推广呢??虽然响应式是趋势,但是目前而言,对于百度怎样好呢

  5. poj-1239(递推关系)好难

    #include <iostream> #include <algorithm> #include <cstring> #include <cstdio> ...

  6. hdu1331&&hdu1579记忆化搜索(DP+DFS)

    这两题是一模一样的``` 题意:给了一系列递推关系,但是由于这些递推很复杂,所以递推起来要花费很长的时间,所以我要编程序在有限的时间内输出答案. w(a, b, c): 如果a,b,c中有一个值小于等 ...

  7. LG3369 【模板】普通平衡树

    题意 您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作: 插入x数 删除x数(若有多个相同的数,因只删除一个) 查询x数的排名(排名定义为比当前数小的数的个数+1.若有多个相 ...

  8. Linux regulator系统

    1. 概念:Regulator : 电源芯片, 比如电压转换芯片Consumer : 消费者,使用电源的部件, Regulator是给Consumer供电的machine : 单板,上面焊接有Regu ...

  9. Git的一些基本操作和命令

    1.创建版本库 在D盘中打开Git Bash Here 1.1.创建一个空目录 Mkdir gitDemo –创建一个目录 Cd gitDemo  --进入gitDemo目录 Pwd –查看当前目录的 ...

  10. asm数据文件迁移(asm–>asm)

    rman迁移操作 [oracle@localhost oradata]$ rman target /   Recovery Manager: Release 10.2.0.3.0 - Producti ...