关闭

git常见场景命令使用

标签: git新手使用教程具体场景
220人阅读 评论(0) 收藏 举报
分类:

1、我想查看某次提交修改了哪些内容,就像使用diff一样详细的列出来。

        git  show  提交的commit ID     

        例如:  git show 9897e8f  (不知道commit id ,可以先使用git log查看得到,一长串数字便是)

   有可能我只想看这次提交的某个文件修改的具体内容,

       git  show  提交的commit ID  -- 文件名

       例如: git show 9897e8f   --  /home/dijiang/hello.cxx  (文件名要带路径)

2、将某个文件的历史修改内容都显示出来:

git  log  -p   文件名

例如:git log -p  ./hello.cxx

3、现已知有一个远程库http:172.29.0.1/hello.git ,如何在本地创建一个分支并且跟踪远程库中的某个版本呢?

分为5步:

(1)找一个干净的目录(或者新建一个),比如叫learn。进入到该目录:cd learn

(2)克隆该远程库:git clone http:172.29.0.1/hello.git

(3)克隆完此时learn目录下应该生成一个hello目录(和项目名一致),继续进入该子目录:cd hello

(4)列出远程库所有的分支(查看你想跟踪的那个分支):git branch -a     (一般叫remote/origin/api等等)

(5)创建本地分支并和远程的分支关联:git checkout -b dijiang  origin/api    (-b 参数不能少,dijiang就是我现在的本地的分支名,origin/api就是我要跟踪的远程库中的某个分支名,就上一步git branch -a 列出的去除remote字符串。)

这时git status查看当前状态,便会发现位于分支dijiang, 与上游分支origin/api一致

4、本地版本比远程库的版本要新,此时要想本地库和远程版本库一致,如果使用git pull 并不能使本地版本和远程版本一致,使用git status 查看还是领先远程版本好多次提交。

    要到达一致目的,需要使用如下命令:

       git reset --hard origin/master    (master为远程分支,替换成你要想一致的远程分支)

5、由于某些错误操作导致本地分支不再和某个远程分支相关联,git status 不再提示与上游分支origin/XXX一致,该如何修复呢?

(1)首先切换到本地分支dijiang:git checkout dijiang

(2)git  branch --set-upstream-to=origin/api  便将本地dijiang分支和远程api分支关联起来啦。(前提是已经关联过远程分支:git remote add http:172.29.0.1/hello.git。不行就先删了远程库:git remote remove origin,然后再关联)

6、push 命令详解

git push命令用于将本地分支的更新,推送到远程主机。

$ git push <远程主机名> <本地分支名>:<远程分支名>

注意,分支推送顺序的写法是<来源地>:<目的地>,所以git pull是<远程分支>:<本地分支>,而git push是<本地分支>:<远程分支>。

如果省略远程分支名,则表示将本地分支推送与之存在”追踪关系”的远程分支(通常两者同名),如果该远程分支不存在,则会被新建。

$ git push origin dijiang:master

上面命令表示,将本地的dijiang分支推送到origin主机的master分支。如果后者不存在,则会被新建。

7、版本回退:

git   reset  --hard  commit_id(提交的ID)

便可以会退到某次提交的版本

8、更改远程库的地址:

(1)查看远程库的地址:gitremote  –v

 origin http://171.22.32.11/hello.git(fetch)

 origin http://171.22.32.11/hello.git(push)

(2)删除与已经存在的远程库的关联

  git remote rm origin

(3)新增远程的地址

  gitremote add origin http://122.122.12.11/hello.git

再次查看便成功了。

9、git合并冲突

打开冲突文件

<<<<<<<<<与======之间的是我修改的。而===========与>>>>>>>>>>>>>之间是别人修改的。

将内容修改后,并且删掉<<<<<<等这些标志后重新提交就解决简单的冲突了。

10、将暂存区文件退回到工作区:

git reset -- files 用来撤销最后一次的git add files(因为每git add file一次,暂存区的文件都会被更改一次)

ps: git checkout -- files 把文件从暂存区域复制到工作目录,用来丢弃本地修改

      git checkout .  (这是一个点) 本地所有修改的,没有的提交的,都返回到原来的状态(丢弃掉所有的未提交的修改)

11、git diff详解:

git diff 是对比出尚未git add文件的差异,该命令可以后面加个路径,只对比出某个文件的差异。

如果已经git add的文件如何进行对比呢?使用选项 --cached,例如git diff --cached ./test.cpp 。改命令只显示出已经git add部分的差异,而后续对test.cpp的修改部分如果没有git add则不显示。

如果只要没有git commit的文件不管有没有git add都对比出差异,则使用HEAD选项,例如git diff HEAD ./test.cpp 。对比出test.cpp自从上次提交后的所有修改。

12、删除某一个配置项:

比如先前设置了 git config --global core.whitespace cr-at-eol 这个忽略换行符的命令,后来发现这样至少掩耳盗铃,反而不好发现有问题的行,于是想将该配置删除。只要在设置的命令加个--unset选项即可,例如git config --global --unset core.whitespace cr-at-eol

1
0
查看评论

GIT常见命令详解

git clone git remote git fetch git pull git push 本文针对初级用户,从最简单的讲起,但是需要读者对Git的基本用法有所了解。同时,本文覆盖了上面5个命令的几乎所有的常用用法,所以对于熟练用户也有参考价值。 ...
  • moshenglv
  • moshenglv
  • 2016-07-06 16:29
  • 552

Git最常用功能,这一篇就够了!(结合开发场景)

毫无疑问,Git是当下最流行、最好用的版本控制系统。Git属于分布式版本控制系统,相较于Subversion等集中式版本控制系统有很明显的优势。对于我们开发人员来说,熟练使用Git是最基本的技能之一。那么,今天就来说一下在开发工作中,使用到的Git的最基本、最常用的功能有那些?克隆版本库工作中,当接...
  • h247263402
  • h247263402
  • 2017-07-08 18:43
  • 978

git场景命令使用

1 将已有项目提交到远程仓库git add . //添加当前目录中的所有文件到索引 git commit -m "commit" //提交到本地源码库,并附加提交注释 git push -u origin dev_20170810_gtc//把本地源码库push到github别名...
  • BiLaHePan
  • BiLaHePan
  • 2017-08-18 10:20
  • 177

面试题整理学习(三):Git常用命令整理

关于Git常用命令整理
  • u012505618
  • u012505618
  • 2017-11-16 16:18
  • 182

git常用的一些命令总结

git常用的一些命令总结 git init 创建一个版本库 git add file 将文件从工作区提交到暂存区 git commit -m “blabla……” 将文件中暂存区提交到仓库 git status 查看仓库当前的状态 git diff 可以查看具体修改了哪些内容 ...
  • u010412719
  • u010412719
  • 2015-07-16 20:52
  • 997

Git基本操作--命令,真的只有最基本的操作

Git基本操作命令,暂时只有最基本的操作,摘自第一行代码! 安装   Ubuntu系统打开shell界面,输入:sudo apt-get install git-core Windows系统去官网下载。网址: http://msysgit.g...
  • lyankj
  • lyankj
  • 2016-10-26 09:58
  • 921

git常见命令使用

git常见命令使用 git版本库初始化,对当前目录下的文件进行版本控制:git init 远程下载代码:git clone git@github.com:dongchen2016/Hello-World.git 查看本地分支的远程分支:git remote -v 删除本地仓库文件:git rm 文件...
  • dongchen2017
  • dongchen2017
  • 2017-08-10 21:38
  • 112

Git使用常见命令

1、git安装后的初始化 安装完成后,还需要最后一步设置,在命令行输入: $ git config --global user.name "Your Name"$ git config --global user.email "email@example.com&quo...
  • qq_35730039
  • qq_35730039
  • 2017-08-01 10:20
  • 143

git 常见使用命令

git status . 查看当前目录修改状态 git diff v195_hd_f11_jinga/system_conf.sh git log  --name-status ../update/alps/vendor/ git log -p -- ../update/alps/v...
  • hanjinding
  • hanjinding
  • 2017-09-22 14:34
  • 92

Git与GitHub常用命令

常用的 git 命令 常用的 GitHub 命令
  • man_help
  • man_help
  • 2016-07-06 17:06
  • 2805
    个人资料
    • 访问:11982次
    • 积分:462
    • 等级:
    • 排名:千里之外
    • 原创:32篇
    • 转载:3篇
    • 译文:0篇
    • 评论:6条
    最新评论