文档章节

见过最好的git入门教程

丁佳辉
 丁佳辉
发布于 2017/02/07 09:52
字数 860
阅读 5
收藏 0

今天找到一篇见过最好的git入门教程

http://lostechies.com/joshuaflanagan/2010/09/03/use-gitk-to-understand-git/

 

粘帖一些命令

1. git add 添加文件到staged area.
2. git commit 会commit staged file ,有几个选项比较重要:-a 跳过staged area,直接commit,后面加文件名也会使那个文件跳过stage,直接commit。但是前提是文件已经在index中了,新文件不会自动加入。
3.git status 查看从上次commit到目前的变化,git diff会更详细,但是它只包含应该要包含在staged area中却还未包含进去的变化,git diff --staged则列出来从上次commit到staged area的变化。
4. .gitignore文件可以设置哪些文件被排除进去,通常可以设.o, .a等文件。
5. git rm 用来remove文件。
6. git mv可以用来重命名文件。
7. git log用来查看日志,git log -p查看详细,gitk 是个图形化的查看工具。
8.Unstaging a Staged File可以用git reset HEAD <file>。 Unmodifying a Modified File可以用git checkout -- <file>。 git commit --amend用来取消上次的commit。
9. git remote显示所有的remote(加-v显示详细信息)。
 git remote add [shortname] [url]用来添加remote。 git fetch [remote-name]只会pull下来全部的更动,但不会自动merge,但是git pull会自动merge。 git remote show [remote-name]可以看到一个remote的详细信息。 git remote rename用来改变一个remote的名字。 git remote rm删除一个remote。
10.git tag列出所有的tag。git show tag-name可以查看tag详细信息。git tag [-a] tag-name -m message [commit-checksum]如果有-a 就添加一个annotated tag,如果没有-a,就添加一个lightweight tag,如果后面要在某个commit之后添加一个tag,就加上checksum好了。 git push有个选项 --tags会把tags信息也push上去。

11.
 git branch testing添加一个testing的branch. git checkout testing切换到testing branch. 
12. 切换branch的时候,当前的branch不能有和要切换过去的branch冲突的uncommitted changes.
13. git merge branch-name 将branch-name merge到当前branch.如果有conflict,可以用status查看状态,解决conflict之后用add 通知git已经解决。然后用commit commit the merge。
14.
   git branch -d branch-name,但是这个branch必须被全部merge到HEAD中了。如果选项是-D的化,就不管它的merge status了。
15. git branch --merged只显示被HEAD完全包含的branch,--no-merged只显示没被HEAD完全包含的branch。
16.
 git push (remote) (branch)把本地某个branch push到remote上去。 git push (remote) (local-branch-name):(remote-branch-name)可以把本地branch push到remote branch上去。
17.git fetch 下载下来的branch不能edit,必须要手动merge到本地branch之后才可以edit。
   $ git checkout -b local-branch-name remote-name/remote-branch-name 可以把server上的branch下载下来,并且可以直接edit。
18.
 Tracking Branches里面可以不必在pull和push后面加remote参数。git branch -r列出remote tracking branches.
19. git push [remotename] :[remote-branch]删除掉某个remote branch。
20. rebase可以获得和merge一样的效果,但是log记录更好,因为看起来没有分支。
 git rebase --onto newbase upstream branch会把从upstream到branch的改动rebase到newbase上去。git rebase basebranch topicbranch会把topicbranch rebase到basebranch上。
21. 
Do not rebase commits that you have pushed to a public repository.

22.git fetch默认会获取repo所有branch的进度,除非指定哪个branch。git push可以将某个branch push到repo中去。

本文转载自:http://lostechies.com/joshuaflanagan/2010/09/03/use-gitk-to-understand-git/

共有 人打赏支持
丁佳辉
粉丝 20
博文 412
码字总数 197400
作品 0
浦东
程序员
私信 提问
我是如何学习git

一开始学习git的时候,网上的git教程很多,看得人眼花缭乱,不知道如何下手。现在对git已经很熟悉了,回过头来总结一下学习方法。 一般官方文档是最全面,但是不一定适合快速上手。我们可以学...

好好编程
2017/11/14
0
0
Git学习记录 力做全网最强入门教程

目录 Git学习记录 力做全网最强入门教程 什么是GitHub? Git的配置 至此我们的入门教程到此结束,更新中级教程要等欧 Git学习记录 力做全网最强入门教程 什么是GitHub? 若您在不知道Git是什么...

Chicago_01
08/23
0
0
git 提交步骤记录(oschina&github)

Git 版本控制入门 如果你不熟悉Git,点此查看权威Git书籍 ProGit(中文版),新手老鸟均适合。 git官网:http://git-scm.com git客户端下载地址:点击这里 git手册:http://git-scm.com/docs...

军歌
2014/10/11
0
1
人人开源/renren-generator

项目说明 renren-generator是人人开源项目的代码生成器,可在线生成entity、xml、dao、service、html、js、sql代码,减少70%以上的开发任务 如何交流、反馈、参与贡献? Git仓库:http://gi...

人人开源
2017/09/15
0
0
git版本控制实践纪录

oschina的实践 ssh-keygen -t rsa -C “sample@163.com” 终端中输入命令 确定路径 输入RSA的密码, 点击进入个人资料个人头像 http://git.oschina.net/oschina/git-osc/wikis/帮助#ssh-keys...

云飞扬v5
2015/12/17
53
0

没有更多内容

加载失败,请刷新页面

加载更多

Sping之项目中pofile的应用

工程中,我们必须要面对的一件事就是, 开发环境中使用的数据库连接地址等与生产上的不同, 如果上线, 那么我们是否还要手动修改这些地址么, 这样做有很多弊端, 不方便, 这时我们就可以使用spr...

克虏伯
8分钟前
0
0
Linux中安装MySQL

Linux中安装MySQL 一、准备工作 此处准备的操作系统位CentOS 7。 MySQL安装包: MySQL-server-5.6.29-1.linux_glibc2.5.x86_64.rpm MySQL-client-5.6.29-1.linux_glibc2.5.x86_64.rpm 将准备......

星汉
12分钟前
0
0
深入理解Hadoop之HDFS架构

Hadoop分布式文件系统(HDFS)是一种分布式文件系统。它与现有的分布式文件系统有许多相似之处。但是,与其他分布式文件系统的差异是值得我们注意的: HDFS具有高度容错能力,旨在部署在低成...

架构师springboot
17分钟前
0
0
MaxCompute表设计最佳实践

MaxCompute表设计最佳实践 产生大量小文件的操作 MaxCompute表的小文件会影响存储和计算性能,因此我们先介绍下什么样的操作会产生大量小文件,从 而在做表设计的时候考虑避开此类操作。 使用...

阿里云官方博客
17分钟前
0
0
云上领跑,快人一步:华为云抢先发布Redis5.0

12月17日,华为云在DCS2.0的基础上,快人一步,抢先推出了新的Redis 5.0产品,这是一个崭新的突破。目前国内在缓存领域的发展普遍停留在Redis4.0阶段,华为云率先发布了Redis5.0,全面展现了...

中间件小哥
17分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部