[译]git status
git status
git status命令能展示工作目录和stage区的状态. 使用他你能看到那些修改被staged到了, 哪些没有, 哪些文件没有被Git tracked到. git status不显示已经commit到项目历史中去的信息. 看项目历史的信息要使用git log.
用法
git status
列出哪些文件被staged了, 哪些文件没有被staged到, 哪些文件没有被tracked到.
讨论
git status相对来说是一个简单的命令. 他简单的展示状态信息. 输出的内容分为3个分类/组
# On branch master
# Changes to be committed: (已经在stage区, 等待添加到HEAD中的文件)
# (use "git reset HEAD <file>..." to unstage)
#
#modified: hello.py
#
# Changes not staged for commit: (有修改, 但是没有被添加到stage区的文件)
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
#modified: main.py
#
# Untracked files:(没有tracked过的文件, 即从没有add过的文件)
# (use "git add <file>..." to include in what will be committed)
#
#hello.pyc
Ignoring Files
没有tracked的文件分为两类. 一是已经被放在工作目录下但是还没有add的, 另一类是一些编译了的程序文件(如 .pyc .obj .exe等). 一旦这些我们不想add的文件一多起来, git status的输出简直没法看, 一大堆的状态信息怎么看?
基于这个原因. Git让我们能在一个特殊的文件.gitignore中把我们要忽略的文件放在其中. 每一个想忽略的文件应该独占一行, *这个符号可以作为通配符使用. 例如在项目根目录下的.gitignore文件中加入下面内容能阻止.pyc文件出现在git status中:
*.pyc
例子
在每次commit之前先使用git status检查文件状态是一个很好的习惯, 这样能防止你不小心commit了你不想commit的东西. 下面的例子展示stage 前后的状态, 并最后commit一个快照.
# Edit hello.py
git status
# hello.py is listed under "Changes not staged for commit"
git add hello.py
git status
# hello.py is listed under "Changes to be committed"
git commit
git status
# nothing to commit (working directory clean)
第一个状态输出显示了这个文件没有staged. git add将影响第二个git status的输出, 最后一个git status告诉我们没有什么能commit了—工作目录已经和最近的commit相匹配了. 有些命令 (如, git merge) 要求工作目录是clean状态, 这样就不会不小心覆盖更新了.
[译]git status的更多相关文章
- 使用git status快速commit
提交之前使用git status可以看到将要提交的文件,如果想部分提交,需要单独commit.使用下面这句可以快速commit git commit `git status | grep 'mod' ...
- [译]git clean
git clean命令用来从你的工作目录中删除所有没有tracked过的文件. git clean经常和git reset --hard一起结合使用. 记住reset只影响被track过的文件, 所以 ...
- [译]git log
git log git log命令用来显示提交的快照. 能列出来你项目的历史, 能过滤和搜索你指定的一些修改. git status能让你检查工作目录和stage区的状态, git log只提供被co ...
- [译]git add
git add git add命令把工作目录下面的有修改的文件添加的index(staging)里面去. git add告诉Git你想在下次commit的时候把什么文件包含进去. 但是, git ad ...
- git status message - Your branch is ahead of origin/master by X commits
git reset --hard origin/master git status FAQ: When I issue the "git status" command, I se ...
- git status 不可全信
不要相信git status,除非在操作的过程中, 看git仓库和本地.git之间的差异 -比如我现在在github上某个分支下上传了某个文件,但我在本地git status显示的还是working ...
- git status对应中文名称
git status显示出来的中文文档是一串字符码,不能正常识别 git config --global core.quotepath false 这一句代码就可以帮你
- 关于git status
如果只在本地修改,还没有commit,那么用git status, 打印信息为: 如果我本地没有修改文件,就是:
- git status简介
git status命令可以列出当前目录所有还没有被git管理的文件和被git管理且被修改但还未提交(git commit)的文件.. 比如; git status # On branch maste ...
随机推荐
- roundup配置
原因:我需要一个简单的issue tracker why roundup: python,简单 找了半天的文档,找不到文档,只能自己慢慢试,试到现在,可以打开tracker页面,用户注册的时候可以发邮 ...
- C# 获取当前,相对,绝对路径
一.C#获取当前路径的方法: 1. System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName -获取模块的完整路径. 2. ...
- 如何自己编写一个easyui插件
本文介绍如何通过参考1.4.2版本的progressbar的源码自己编写一个HelloWorld级别的easyui插件,以及如何拓展插件的功能. 有利于我们理解easyui插件的实现,以及了解如何对e ...
- 加州大学伯克利分校Stat2.3x Inference 统计推断学习笔记: Section 4 Dependent Samples
Stat2.3x Inference(统计推断)课程由加州大学伯克利分校(University of California, Berkeley)于2014年在edX平台讲授. PDF笔记下载(Acad ...
- codevs 1063 合并果子//优先队列
1063 合并果子 2004年NOIP全国联赛普及组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 题目描述 Description 在一个果园里,多多已经将所有的果 ...
- Linux rsync网站目录同步功能的实现
实现目标: 172.16.1.64服务器上的/var/www/sw_service目录,与172.16.1.60服务器上的/var/www/sw_service目录实现同步, 即1.60主动向1.64 ...
- HTML之表格制作
如何制作一个表格? 如何制作一个表格呢? 观察如下代码: <!DOCTYPE html> <html lang="en"> <head> &l ...
- Git / 程序员需要知道的12个Git高级命令
众所周知,Git目前已经是分布式版本控制领域的翘楚,围绕着Git形成了完整的生态圈.学习Git,首先当然是学习Git的基本工作流.相比于SVN等传统版本控制系统来说,Git是专为分布式版本控制而生的强 ...
- SQL Server编程(01)流程控制
批处理 应用程序向SqlServer发送的一组命令,Sql Server会将其编译成一个可执行单元,称为执行计划,执行计划中的语句每次执行一条. 每个不同的批处理用GO命令分割.GO命令不是SQL语句 ...
- tomcat添加https
1.下载依赖包 wget http://archive.apache.org/dist/apr/apr-1.4.5.tar.gz wget http://archive.apache. ...