`
cuixuxucui
  • 浏览: 347055 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

git命令学习笔记

    博客分类:
  • git
 
阅读更多

参考自http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

一、配置

git config --global user.name "Your Name"

git config --global user.email "email@example.com" 使用--global参数表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址

二、提交

git status

git init 初始化生成.git文件夹

git add test.txt 将改动添加到暂存区,可以多次执行add命令,然后一次性commit.比如git add file1.txt/git add file2.txt file3.txt git commit -m "add 3 files."

git commit -m "本次提交的说明备注"

git log 查看提交记录 git log --pretty=oneline 此参数可以将日志简略为版本号加提交说明

git diff 查看更改记录

三、往返任意一个版本

git reset --hard HEAD^ 回退版本,HEAD^^表示回退上上一个版本,HEAD^100表示回退上100个版本

HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。

穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。

要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。

四、撤消修改

命令git checkout -- readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:

一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;

一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。

总之,就是让这个文件回到最近一次git commit或git add时的状态。

用命令git reset HEAD file可以把暂存区的修改撤销掉(unstage),重新放回工作区

五、删除

git rm test.txt

git commit -m "remove"

git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。

六、远程连接

添加远程库:

git remote add origin git@github.com:CuiXu1987/TestGit.git

origin是远程仓库在本地别名,你可以自由取,git链接是在建立远程仓库时要你记下的ssh连接。此句就是在本地建立远程仓库别名并链接到远程仓库。

git push -u origin master

由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。

此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改;

从远程库克隆:

git remote -v

fetch抓取权限

push推送权限

git push origin master

git push origin dev

 

git clone git@github.com:CuiXu1987/gitskills.git 会将远程项目下载到当前路径master

git checkout -b dev origin/dev要在dev分支上开发,就必须创建远程origin的dev分支到本地,于是他用这个命令创建本地dev分支

git commit -m ""

git push origin dev 提交到dev分支

先用git pull把最新的提交从origin/dev抓下来,然后,在本地合并,解决冲突,再推送:

git pull也失败了,原因是没有指定本地dev分支与远程origin/dev分支的链接,根据提示,设置dev和origin/dev的链接:

git branch --set-upstream dev origin/dev

git pull

git commit -m ""

git push origin dev 

因此,多人协作的工作模式通常是这样:

首先,可以试图用git push origin branch-name推送自己的修改;

如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;

如果合并有冲突,则解决冲突,并在本地提交;

没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!

如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream branch-name origin/branch-name。

这就是多人协作的工作模式,一旦熟悉了,就非常简单。

七、分支

在撤消操作中,git checkout -- file命令中的--很重要,没有--,就变成了“切换到另一个分支”的命令

创建dev分支并切换:

git branch dev 创建dev分支

git checkout dev 切换分支

也可以合并成一行:git checkout -b dev 创建加切换

git branch可以查看当前分支,git checkout master/dev则可以切换当前所处分支

git merge dev用于合并指定分支dev到当前分支master

git branch -d dev则是合并后删除掉dev分支 丢弃一个没有合并过的分支需要git branch -D dev

 

master发布稳定版本 只在发布时使用

dev为开发分支 内部使用

从dev上每个小组成员都有自己的分支 做完提交

 

如果当前分支没有做完 想另起分支去做另一个任务 可以使用Stash功能

git stash

git dev 进入dev分支

git checkout -b issue-101

git add xx.txt

git commit -m "fix bug"

git checkout dev

git merge --no--ff -m "merged bug fix" issue-101

git branch -d issue-101

git stash apply恢复后,stash内容并不删除,你需要用git stash drop来删除;

git stash pop恢复的同时把stash内容也删了:

 

分享到:
评论

相关推荐

    Git命令学习笔记.md

    Gi是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。...该资源包含了git使用的常见命令

    Git.xmind 学习笔记

    自己的Git命令学习笔记,思维导图 学习Git

    Git常用命令-学习笔记.zip

    Git工具命令学习笔记pdf,git各种命令,分支管理,远程仓库管理等等离线笔记

    Github、git 学习笔记.pdf

    个人github、git学习笔记。包含Github和git的基础命令和介绍。由于网络问题在国外很难插入图片,把源文件的pdf导出版本进行上传。

    20210324_231823_1_搭建博客可能会用到的Git命令|学习笔记1

    以下内容主要来自「极客时间」的课程《Git 三剑客》,这里的三剑客是指:我整理了一些在课程中用到的 Git 命令,对程序员可能是小菜一碟,可能对想搭建博客的朋友

    Git学习笔记/常用命令总结

    Git常用命令的总结,适用于Git初学者和需要用到Git工具的开发人员。 内容包括: 1.Git安装配置 2.Git工作流程 3.Git工作区、暂存区和版本库等概念 4.Git创建仓库 5.Git基本操作 6.Git分支管理 7.Git查看提交历史 8....

    git小白学习笔记(轻松应付公司需求)

    现在互联网公司 运用git搬运代码是非常常见的 整理了一些git基本命令来快速学会git

    git学习笔记,入门指南以及常用git指令

    git学习笔记常用git指令 一.创建或clone版本库 1.在本地创建一个新的版本库 $git init(cd至需要用到的地址,文件夹,用git init初始化版本库) 2.克隆一个已经存在的版本库 $git clone git@github....

    git入门学习实验笔记

    git学习的实验笔记 在Linux上从零开始用实验验证每一个命令的用法,以及思考验证。

    git学习笔记(专业)

    业界良心,此资源必属精品,是我花了很长时间亲自实践整理出来的,8分就可得到此资源绝对划算。...包括不单单使用工具,使用git命令来进行操作等一系列相关知识,绝对让你对git有更深刻的理解。管理层必备。

    git学习笔记,一看就会

    git最基础的命令,只要学会使用这些命令,就可以轻松上手git管理自己的项目

    Git学习笔记

    Git学习笔记教程,linux命令等,常用命令的整理

    git学习笔记

    git学习笔记,让您快速掌握git使用,包括了git的基本知识以及一些常用的命令

    git命令笔记

    git 学习文档,分享一下,作为笔记查看;git 学习文档,分享一下,作为笔记查看

    Git-Pro 学习笔记 -xmind 打开

    提炼了各种Git 应用场景的命令和基础说明与分类,基本满足大型软件开发要求,我主要基于Android 系统开发,几百个git 仓库各种分支,合并。

    git入门笔记

    git入门笔记, 基本操作,主要记录了学习git的过程使用到饿一些基本命令,比如常见的git pull, git push, git status, git log等

    git.docx学习心得笔记

    包括架构原理 git常用命令及使用

    git常用操作附示例-个人学习笔记

    git常用命令总结,虽说git操作比较多。但和开发相关的命令没有多少,这是自己总结的开发过程中要经常使用的命令,基本够了。

Global site tag (gtag.js) - Google Analytics