博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
git常用命令
阅读量:7085 次
发布时间:2019-06-28

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

开始的时候

1  git config --global user.name "Your Name"2  git config --global user.email "email@example.com"

查看你的信息

1 git config --list

克隆仓库

1 git clone  [url]

版本库

1 mkdir learngit2 cd learngit3 pwd4 /Users/michael/learngit5 初始化:6 git init

文件添加到版本库

1 #创建文件2 vim   readme.txt3 cat  readme.txt4 Git is a version control system.5 Git is free software.6 #文件添加到仓库7 git  add  readme.txt8 #把文件提交到仓库9 git commit -m "wrote a readme file"

跳过使用暂存区(不适用git  add) 

1 git   commit -a -m  "说明的文字"2 3 4 只需要加个-a选项

查看状态

git  status  #查看状态git  diff  readme.txt   #比较文件上次修改的东西,,比较当前工作目录中的文件和暂存区域快照之间的差异,只是显示尚未暂存的改动 git  diff  --cached    #已经暂存的将要添加到下次提交里的内容
1 1 git  status 2  2 [root@pup learngit]# git status 3  3 # On branch master 4  4 nothing to commit (working directory clean) 5  5 修改文件后在查看 6  6 [root@pup learngit]# vim readme.txt  7  7 [root@pup learngit]# git status 8  8 # On branch master 9  9 # Changed but not updated:10 10 #   (use "git add 
..." to update what will be committed)11 11 # (use "git checkout --
..." to discard changes in working directory)12 12 #13 13 # modified: readme.txt14 14 #15 15 # Untracked files:16 16 # (use "git add
..." to include in what will be committed)17 17 #18 18 # .readme.txt.swp19 19 no changes added to commit (use "git add" and/or "git commit -a")20 [root@pup learngit]# git diff readme.txt 21 diff --git a/readme.txt b/readme.txt22 index 4dfbf00..a6cb86a 10064423 --- a/readme.txt24 +++ b/readme.txt25 @@ -1,3 +1,3 @@26 Git is a distributed version control system.27 Git is free software distributed under the GPL28 -11111111111111111111111111111111111111111111129 +222222222222222222222222222222222222222
View Code

 移除文件(从暂存区中移除)

git   rm   文件   #会连带从工作目录中删除指定的文件git  rm   -f   文件   #删除之前修改过并且已经放到暂存区域的文件,不可恢复git rm --cached   文件    #从暂存区域移除但是文件依然保留在当前工作目录中

移动文件(给文件改名字)

git mv README.md README相当于$ mv README.md README$ git rm README.md$ git add README

版本回退

1 git  log  #命令显示从最近到最远的提交日志2 git log  --pretty=oneline   #简洁的显示   git  log  -p -2    #-p 每次提交的内容差异,-2最近两次提交3 在Git中,用HEAD表示当前版本,上一个版本就是HEAD^,上上一个版本就是HEAD^^,一般写成HEAD~1004 git reset --hard HEAD^  #回退到上一个版本5 git reflog查看命令历史,以便确定要回到未来的哪个版本6 回退:7 git reset --hard commit_id8 回到未来9 git reset --hard commit_id

定制要显示的记录格式

git log --pretty=format   格式例如:git log --pretty=format:"%h - %an, %ar : %s"

工作区和暂存区概念理解

1 git add命令实际上就是把要提交的所有修改放到暂存区(Stage),然后,执行git commit就可以一次性把暂存区的所有修改提交到分支。2 前面讲了我们把文件往Git版本库里添加的时候,是分两步执行的:3 4 第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区;5 6 第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。7 从来没被添加过的文件状态是Untracked

具体过程如下:

刚开始:

文件修改提交

最后

 

 撤销修改

1,当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时 

1 git checkout -- file2 git checkout -- readme.txt

2当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,返回到以前的工作区的内容

git reset HEAD  文件   #从暂存区返回到工作区

 3提交了(commit)了但是可能漏了几个文件没有(add)添加或者提交信息写错了,这是运行

git commit --amend     #尝试重新提交

eg

$ git commit -m 'initial commit'$ git add forgotten_file$ git commit --amend 最终你只会有一个提交 - 第二次提交将代替第一次提交的结果。

 

 

转载于:https://www.cnblogs.com/Dicky-Zhang/p/6250644.html

你可能感兴趣的文章
如何将 DVD 转成 ISO
查看>>
HDU 5671 Matrix 水题
查看>>
[PWA] 3. Devtool
查看>>
Sql Server优化之索引提示----我们为什么需要查询提示,Sql Server默认情况下优化策略选择的不足...
查看>>
Code First开发系列之管理数据库创建,填充种子数据以及LINQ操作详解
查看>>
Autofac.Integration.Owin
查看>>
Codeforces Round #272 (Div. 2) D. Dreamoon and Sets 构造
查看>>
[转] GIS二次开发(C#+AE)
查看>>
请求(Request)的参数(Parameter)里包含特殊字符(#等)的正确处理方式
查看>>
李洪强经典面试题43
查看>>
Android View体系(二)实现View滑动的六种方法
查看>>
Http请求中Content-Type和Accept讲解以及在Spring MVC中的应用
查看>>
NGINX反向代理
查看>>
MySQL集群---②Windows平台搭建MySQL CLUSTER集群
查看>>
完整部署CentOS7.2+OpenStack+kvm 云平台环境(6)--在线调整虚拟机的大小
查看>>
UEditor百度编辑器,工具栏自定义添加一个普通按钮
查看>>
HOLOLENS程序发布,这个界面调用的图片
查看>>
Atitit. Api 设计 原则 ---归一化
查看>>
【MongoDB】3.详细命令集合
查看>>
腾讯企业大学培训经验
查看>>