git基本操作

 

 

  要使用Git进行版本管理,必须先初始化仓库。在初始化仓库之前必须先在本地实际创建一个目录用于代码管理。

$  mkdir git-test   

$  cd git-test

$  git init     //初始化仓库

 

  git status    使用git status 可以查看仓库的状态,是一个十分常用的命令。 

    git  add   在用git仓库的工作树创建了文件之后,该文件并没有添加到git仓库的版本管理对象当中,需要使用  git  add 命令将其加入到暂存区中。暂存区是提交之前的一个临时区域。

  git commit   命令将当前暂存区中的文件实际保存到仓库的历史记录中去。通过这些历史记录可以在工作树种回复原文件。

  git log   该命令可以查看以往仓库中提交的日志。包括什么人在什么时候进行了提交或合并,以及操作前后的差别。

  git diff   该命令可以查看工作树、暂存区、最新提交之间的差别。

 

  git branch  该命令可以查看所有分支名并显示当前所在分支。前面有 * 标记的分支即为当前分支

      git branch  <branch name>   该命令可以创建一个分支

  git checkout <branch name>  该命令可以切换到指定的分支

  以上两条命令连续执行可以创建并切换到某一分支,同时也可以使用一条命令完成:  git checkout -b <branch name>

  git  merge --no-ff branch-B 可以将某一分支branch-B合并到分支branch-A并将合并记录提交到历史记录中去,但在合并前必须先切换到分支branch-A。

  在合并时,可能出现两个分支中的文件内容出现冲突,此时打开冲突文件,修改内容即可。但在修改之前必须仔细分析冲突的内容再修改。

  git log --graph  以图表形式查看分支,其可以清楚的看到给分支修改都过程。

 

  git remote add 可以添加远程仓库

  git remote add origin 仓库路径     git@github.com:<username>/<repositoryname>.git为github的仓库路径格式

                       https://git.coding.net/<username>/<repositoryname>.git为coding的仓库路径格式

  git push -u origin <barnchname> 可以将本地分支推送至远程仓库

  git pull origin <barnchname>  可以获取最新的远程仓库的分支

  git clone  仓库路径    可以将远程的仓库下载到本地

  

 

git更新文件冲突  Please, commit your changes or stash th

如果系统中有一些配置文件在服务器上做了配置修改,然后后续开发又新添加一些配置项的时候,

在发布这个配置文件的时候,会发生代码冲突:

error: Your local changes to the following files would be overwritten by merge:
        protected/config/main.php
Please, commit your changes or stash them before you can merge.

如果希望保留生产服务器上所做的改动,仅仅并入新配置项, 处理方法如下:

git stash 
git pull
git stash pop

然后可以使用git diff -w +文件名 来确认代码自动合并的情况.

 

反过来,如果希望用代码库中的文件完全覆盖本地工作版本. 方法如下:

git reset --hard 
git pull

其中git reset是针对版本,如果想针对文件回退本地修改,使用

 git checkout HEAD file/to/restore  

 

git fetch 的简单用法:更新远程代码到本地仓库 

 

posted @ 2016-11-15 13:44  wj_hubei  阅读(383)  评论(0编辑  收藏  举报