git pro笔记 《Git 基础》

本文详细介绍了Git的基础操作,包括查看当前分支和文件状态、添加文件到暂存区、提交更改、忽略文件、查看文件差异、撤销修改、移动文件、查看提交历史、远程仓库的管理等,帮助读者掌握Git的基本使用流程。
摘要由CSDN通过智能技术生成
git state

会显示当前在哪个分支,哪些文件修改了没有添加到暂存区,哪些添加了没有提交。

git add readme.md

就会把一些文件添加到暂存区(stage)了

这个时候再运行

git state

就会显示readme.md是newfile状态了

如果没有add就会告诉你它是modified状态,会问你要不要添加这个文件到缓存区

如果add完之后你又修改了这个文件,再使用state会出现两个状态

new file 和 modified

其中new file就是你当前这个没add的文件,而modified的文件实际上是你上次add放进缓存区里的


因为git add是可以添加目录的,一般用

git add .

添加当前目录下所有的文件以及文件夹,如果想忽略一些,那么就要建立一个.gitignore的文件

然后写上想忽略的文件名,像这样

*.[oa]
    *~

第一行告诉 Git 忽略所有以 .o 或 .a 结尾的文件。一般这类对象文件和存档文件都是编译过程中出现的,我们用不着跟踪它们的版本。第二行告诉 Git 忽略所有以波浪符(~)结尾的文件,许多文本编辑软件(比如 Emacs)都用这样的文件名保存副本。此外,你可能还需要忽略 logtmp 或者 pid 目录,以及自动生成的文档等等。要养成一开始就设置好 .gitignore 文件的习惯,以免将来误提交这类无用的文件。

文件 .gitignore 的格式规范如下:

  • 所有空行或者以注释符号  开头的行都会被 Git 忽略。
  • 可以使用标准的 glob 模式匹配。
  • 匹配模式最后跟反斜杠(/)说明要忽略的是目录。
  • 要忽略指定模式以外的文件或目录,可以在模式前加上惊叹号(!)取反。


如果想查看已经修改了的文件和暂存区文件的区别,可以使用

git diff

进行查看,注意这里是指的修改了还没add的文件和暂存区的区别,如果要查看暂存区和工作空间(上次提交)的区别,则使用一个参数

git diff --cached

新版的使用

 git diff --staged

就可以了。


一切都添加好了以后,使用

git commit -m "Story 182: Fix benchmarks for speed"

进行对更改进行提交,从暂存区提交到了工作空间,并且添加了一条说明

如果直接使用

git commit

则会自动打开git的文本编辑器,进行输入,并且附带了各种修改信息的注释,在关闭编辑器以后自动删除那些注释

还有一种不用add直接提交的办法,就是

git commit -a

这样就跳过了暂存区,而是直接执行

git add . git commit

这两条操作了

如果之前提交的一次感觉有漏掉的,想要删除那次提交,可以使用

git commit --amend

重新提交

如果add到暂存区的文件又不想要了,可以使用

git reset HEAD benchmarks.rb
撤销掉刚才添加的这个benckmarks.rb文件

如果想要删除某个文件,则执行

git rm grit.gemspec

那么这个文件就会从工作空间中被删除掉,如果之前修改过这个文件,并且放到暂存区了的话,则需要使用-f参数来强制删除,这样防止新的修改没有记录的误删操作


git 自己有一个递归操作符号,就是反斜杠\,例如

git rm log/\*.log

这一句就是删除log目录以及其子目录下所有后缀为log的文件


移动文件

git的移动文件和shell操作很像

git mv file_from file_to

就是把file_from改名成了file_to

其实相当于执行了

git rm file_from git add file_to

两步操作


使用

git log

可以看到所有的提交历史以及作者信息

加上参数

git log -p -2

则可以看到近两次提交详细的变化情况

其中-p是变化,-2是显示近2次内容


如果修改了某个文件,还没有添加到暂存区,现在又不想要了,想要回到上次提交的状态,这个时候使用

git checkout -- benchmarks.rb

把benckmarks.rb恢复到工作空间中上次提交的状态。

这个操作相当危险,因为现在修改的内容并没有记录到工作空间里,所以一旦执行了这条命令这次修改的内容将在git中无法找到了


远程操作

任何从远程克隆下来的项目,都会有至少一个远程仓库,默认是origin,我们使用

git remote


可以查看所有的远程仓库

如果加上参数-v则可以看到远程仓库对应的地址

如果想要添加一个新的远程仓库,只需要

git remote add pb git://github.com/paulboone/ticgit.git

就可以把这个地址对应的仓库添加到这个工程里了,并且给他取了一个名字叫pb,这个名字是自己随便取的,和远程完全无关,方便我们接下来使用这个名字快速的操作这个仓库

如果想要下载这个远程仓库的所有内容,我们使用

git fetch pb

在本地就可以看到一个叫做pb/master的分支了,这个分支是独立的,不会影响到本地之前已有的分支,如果想要它影响到本地的分支,需要在之后再进行一个merge操作

使用

git remote show origin

可以看到某一个分支的详细信息,甚至包括了如果执行缺省的push会是怎样的操作

还有远程有哪些分支,哪些分支没有同步到本地


如果想把远程的仓库重命名,可以使用

git remote rename pb paul

这样就把pb这个远程仓库改名成了paul

如果想要直接删除某个远程仓库,可以使用

git remote rm paul

Pro Python 第2版,2014.12.17出版的新书 You’ve learned the basics of Python, but how do you take your skills to the next stage? Even if you know enough to be productive, there are a number of features that can take you to the next level in Python. Pro Python, Second Edition explores concepts and features normally left to experimentation, allowing you to be even more productive and creative. In addition to pure code concerns, Pro Python develops your programming techniques and approaches, which will help make you a better Python programmer. This book will improve not only your code but also your understanding and interaction with the many established Python communities. This book takes your Python knowledge and coding skills to the next level. It shows you how to write clean, innovative code that will be respected by your peers. With this book, make your code do more with introspection and meta-programming. And learn and later use the nuts and bolts of an application, tier-by-tier as a complex case study along the way. This book is for intermediate to advanced Python programmers who are looking to understand how and why Python works the way it does and how they can take their code to the next level. Table of Contents 1. Principles and Philosophy 2. Advanced Basics 3. Functions 4. Classes 5. Common Protocols 6. Object Management 7. Strings 8. Documentation 9. Testing 10. Distribution 11. Sheets: A CSV Framework 12. Style Guide for Python 13. Voting Guidelines 14. The Zen of Python 15. Docstring Conventions 16. Backward Compatibility Policy 17. Python 3000 18. Python Language Moratorium
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值