看了一些git教程后自己的总结

平时在维护开源程序的时候我时常会用到git,在win下用eclipse的git插件,用gitbash,在Ubuntu下也用eclipse的git插件和git工具,在这几个工具里面切来切去,也让我遇到不少问题,有些一直困扰我,但是也会被我慢慢解决的,如下就是我的一些用法,都经过gitbash的实验,一般不会有问题。

我的开源程序地址:jshoper3x开源系统

 你可以通过这个程序来实验下面的git命令

1,如何在提交代码前看看我的代码中不同文件的状态?
    git status
 
2,如何把别人的代码拉取下来?
    git clone url
    url:一般都是在github上的仓库地址
    执行这个命令后,仓库就会被下载到你指定的目录
 
3,如何把新的文件加入到git的索引中?
    git add file1 file2 file3
    这么增加很多文件的话一定很烦,那么请使用git add . 把所有文件加入到git索引中
    git索引:代表了你的文件已经被git管理
 
4,如何看我将要提交到远程仓库的文件?
    git diff --cached
 
5,如何给我的提交增加备注说明?
    git commit -m “xxxx说明”这个命令是提交代码必须的
 
6,如何通过图形化的界面查看该项目的所有历史提交记录?
    gitk
 
7,如何查看项目的日志?也就是你的提交记录
    git log
 
8,如何合并git add 和git commit 命令的效果?
    git commit -a -m“xxx说明”
    注意,这会把所有文件add到git索引中,可能你会有不想被git管理的文件,所以你需要事先通过忽略文件来控制。
 
9,如何创建一个分支?
    git branch a
    a就是新分支,然后使用git checkout a来切换到a分支,创建分支的意义是,你可以在自己的分支下开发,在开发完成后和主版本master合并,尤其在团队中尤为重要
 
10,如何合并分支到主分支?
    git merge a master
 
11,如何删除已经合并的分支?
    git branch -D a
 
12,如何暂时保存我们的工作记录,去看一个例如修复版本bug的事情?
    git stash “xxxxx” 暂时记录你的工作状态
    进行你的修复工作
    git commit -a -m “xxx提交你的修复”
    git stash apply 回到你的工作
 
13,如何搞定远程分支和本地主版本的合并?
    git branch --track [远程分支的名称] origin/[远程分支的名称]
    例如:git branch --track a origin/a
    git pull a
    pull:这个命令同时做了下载远程a分支,并合并到本地master的动作。如果有冲突是会合并失败的,但是不会造成下载a分支失败。
 
14,如何根据关键字搜索其在代码中出现的位置?
    git grep -n  [key]
 
15,如果我想重置我的版本如何做?
    git reset --hard HEAD 
    这个命令会把你做过的所有未提交(git commit -m)的内容清空
 
16,如果我只想重置一个文件怎么做?
    git checkout --file
    这时只会check出一个未修改过的文件
 
17,如何修复一个已经提交文件中的错误?
    虽然有2种做法,创建一个新提交和checkout出老提交并修复,但是建议通过创建新提交去做。因为git对于历史内容被改动会出现不能合并的情况
    
 
 

猜你喜欢

转载自sdywcd.iteye.com/blog/2054055