git操作

Posted yinqanne

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git操作相关的知识,希望对你有一定的参考价值。

一、创建版本库

$git init

二、远程仓库

1、关联远程仓库

$ git remote add origin [email protected]/arts-repo/search-it-automation.git

2、从远程仓库拉取代码

$ git clone [email protected]/arts-repo/search-it-automation.git

3、更新本地仓库代码

$ git fetch

$ git pull

4、把文件添加到仓库

$ git add readme.txt

5、把文件提交到仓库

$ git commit -m "wrote a readme file"

6、把本地库的所有内容推送到远程库上

$ git push -u origin master

 

三、创建与合并分支

(1)从master分支创建dev分支并切换到dev分支

$ git checkout master

$ git checkout -b dev

(1)查看本地当前分支

$ git branch

分支前面带“*”表示当前分支,剩下的分支表示本地有的分支。

(2)查看远程全部的分支,

$ git branch -a

注意:白色的表示本地有的,红色的表示本地没有,仅在远程存在

(3)分支合并(将dev合并到master)

$git checkout master

$git merge dev

(4)合并完成后,删除dev分支

$git branch -d dev

注意:删除dev分支时,注意我们当前所在的分支不能是dev分支)

 

四、解决冲突

(1)创建分支

$ git checkout -b feature1

Switched to a new branch ‘feature1‘

(2)修改readme.txt最后一行,改为:

Creating a new branch is quick AND simple.

(3)在feature1分支上提交:

$ git add readme.txt

$ git commit -m "AND simple"

[feature1 14096d0] AND simple

1 file changed, 1 insertion(+), 1 deletion(-)

(4)切换到master分支

$ git checkout master

Switched to branch ‘master‘

Your branch is ahead of ‘origin/master‘ by 1 commit.

(use "git push" to publish your local commits)

(5)在master分支上把readme.txt文件的最后一行改为:

Creating a new branch is quick & simple.

(6)提交

$ git add readme.txt

$ git commit -m "& simple"

[master 5dc6824] & simple

1 file changed, 1 insertion(+), 1 deletion(-)

 

注意:现在,master分支和feature1分支各自都分别有新的提交,这种情况下,Git无法执行“快速合并”,只能试图把各自的修改合并起来,但这种合并就可能会有冲突

$ git merge feature1

Auto-merging readme.txt

CONFLICT (content): Merge conflict in readme.txt

Automatic merge failed; fix conflicts and then commit the result.

Git告诉我们,readme.txt文件存在冲突,必须手动解决冲突后再提交。git status也可以告诉我们冲突的文件

 

(7)查看readme.txt中的内容

Git is a distributed version control system.

Git is free software distributed under the GPL.

Git has a mutable index called stage.

Git tracks changes of files.

<<<<<<< HEAD Creating a new branch is quick & simple.

======= Creating a new branch is quick AND simple.

>>>>>>> feature1

注意:Git用<<<<<<<,=======,>>>>>>>标记出不同分支的内容,

(8)我们修改如下后保存:

Creating a new branch is quick and simple.

(9)再提交:

$ git add readme.txt

$ git commit -m "conflict fixed"

[master cf810e4] conflict fixed

(10)最后,删除feature1分支:

$ git branch -d feature1

Deleted branch feature1 (was 14096d0).

 

五、版本回退

(1)显示从最近到最远的提交日志

$git log --pretty=oneline

(2)回退到上一个版本

$ git reset --hard HEAD^

(3)回到指定版本

$ git reset --hard 1094a

(4)显示每一次命令历史

$git reflog

 

六、修改操作

(1)查看工作区和版本库里面最新版本的区别

$git diff HEAD -- readme.txt

(2)丢弃工作区的修改

$ git checkout -- readme.txt

(3)把暂存区的修改撤销掉

$ git reset HEAD readme.txt

(4)从版本库中删除该文件

$ git rm test.txt

$ git commit -m "remove test.txt"

以上是关于git操作的主要内容,如果未能解决你的问题,请参考以下文章

git远程仓库操作

git工具的日常操作使用

Git上手:使用Tortoisegit操作Git

Git系列在IDEA操作Git本地仓库与连接远程Git仓库(推送合并拉取克隆操作)

Git操作命令

Git工程开发实践——Git常用操作