博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
git使用手册
阅读量:6356 次
发布时间:2019-06-23

本文共 2505 字,大约阅读时间需要 8 分钟。

  hot3.png

年底了,重温了下git知识,这里也做个记录,方便自己与刚好路过的你查询,若发现书写不当的地方,欢迎指正。

git安装:https://git-scm.com/downloads

检查git安装是否成功:安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功!

创建版本库:新建一个空白文件夹,在命令行工具里进入该文件,输入git init

将文件添加到git仓库:

        第一步:git add xxx.txt
        第二步:git commit -m "这里输入本次提交说明"
    
查看仓库状态:git status

查看文件修改内容:git diff xxx.txt

查看历史记录:git log

查看简短的历史记录:git log --pretty=oneline

退回上一个版本或者退回下一个版本:git reset --hard id (id指的是版本号,版本号没必要写全,前几位即可)

查看每一次命令:git reflog

丢弃工作区的修改(让文件回到最近一次git commit 或git add时的状态):git checkout -- xxx.txt

将暂存区的修改退回到工作区:git reset HEAD xxx.txt

创建SSH Key(本地Git仓库和github仓库之间是通过SSH加密的),打开 git bash ,输入:

        ssh-keygen -t rsa -C "youremail@example.com"
        (如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。)

将本地仓库关联上一个空的github仓库:

        git remote add origin git@github.com:githubName(github名称)/githubRep(github仓库名).git
        
将本地库所有内容推送到远程库上:git push -u origin master(由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。)

将远程库克隆到本地:git clone git@github.com:githubName(github名称)/githubRep(github仓库名).git

创建并切换到<name>分支:git check -b <name> (git checkout命令加上-b参数表示创建并切换)

创建分支:git branch <name>

切换分支:git checkout <name>

查看分支 git branch

将指定分支合并到当前分支:git merge <name>(<name>为指定分支)

删除分支:git branch -d dev(dev为指定删除分支)

查看分支合并图:git log --graph 

查看分支合并图(省略版):

        git log --graph --pretty=oneline --abbrev-commit
        
合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。
        git merge --no-ff -m "merge with no-ff" <name>
        (因为本次合并要创建一个新的commit,所以加上-m参数,把commit描述写进去)
        
将当前工作现场“储藏”起来(前提是工作现场里的文件都已经add过):git stash

查看“储藏”的工作内容:git stash list

恢复stash内容有两个办法:

    方法一:git stash apply stash@{0},恢复后stash内容并不删除,需要用git stash drop删除
    方法二:git stash pop  恢复的同时把stash内容也删了

强行删除一个没有合并过的分支:git branch -D <name>

查看远程库信息:git remote 

查看远程库详细信息:git remote -v

本地新建的分支如果不推送到远程,对其他人是不可见的。

推送分支:git push origin master (将本地master分支推送到远程库origin上)    

从本地推送分支,使用 git push origin branch-name ,如果推送失败,先用 git pull抓取远程的新提交

抓取远程的新提交: git pull

在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致

建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name;

在当前分支的当前新建一个标签:git tag <tagName> 或者 git tag <tagName> commitId

新建标签并指定标签信息: git tag -a <tagname> -m "blablabla..." commitId

查看所有标签:git tag

推送一个本地标签:git push origin <tagname>

推送全部未推送过的本地标签:git push origin --tags

删除已关联的名为origin的远程库:git remote rm origin

让git适当的显示不同的颜色:git config --global color.ui true

转载于:https://my.oschina.net/cc4zj/blog/1608112

你可能感兴趣的文章
BZOJ1969: [Ahoi2005]LANE 航线规划(LCT)
查看>>
linux内存管理之malloc、vmalloc、kmalloc的区别
查看>>
GreenDao 数据库升级 连接多个DB文件 或者指定不同的model&dao目录
查看>>
M1卡破解(自从学校升级系统之后,还准备在研究下)【转】
查看>>
vue 访问子组件示例 或者子元素
查看>>
linux内核--自旋锁的理解
查看>>
银行卡的三个磁道
查看>>
OpenSSL 提取 pfx 数字证书公钥与私钥
查看>>
Keepalived详解(四):通过vrrp_script实现对集群资源的监控【转】
查看>>
CollapsingToolbarLayoutDemo【可折叠式标题栏,顺便带有CardView卡片式布局】
查看>>
CentOS7.4安装配置mysql5.7 TAR免安装版
查看>>
解决IE二级链接无法打开故障
查看>>
Windows phone应用开发[16]-数据加密
查看>>
SQL Server 迁移数据到MySQL
查看>>
通用数据压缩算法简介
查看>>
The next Industry Standard in IT Monitoring, a python implementation Nagios like tool --- Shinken
查看>>
(笔记)找工作,该怎么进补
查看>>
div的显示和隐藏以及点击图标的更改
查看>>
(轉貼) Ubuntu將在ARM平台netbook上現身 (SOC) (News) (Linux) (Ubuntu)
查看>>
SQL注入测试工具:Pangolin(穿山甲)
查看>>