您的位置:首页 > 其它

Git学习(一)-----Git基础

2016-02-22 22:31 218 查看
Git学习(一)

1.      取得项目的git仓库

1)  git init 对现有的某个项目开始用git管理,初始化后,项目目录下会出现一个.git文件夹。注意不要随便修改此文件夹。

2)  git clone 对现有仓库的克隆,例如:git clone git://github.com/schacon/grit.git

本地已经有了一个git源码的仓库。同样,这也会在本地该目录下生成一个.git文件夹。

如果需要在克隆时候自己指定一个名字,则可以在最后指定,如:

git clone git://github.com/schacon/grit.git mygit

 

2.      检查当前文件状态--git status

3.      跟踪新文件—git add

4.      暂存已修改文件—git add

注意,git add 在不同场合有不同的作用。当跟踪新文件后,如果该文件有了新的修改,此时应用git add 将此文件暂存到暂存区

5.      忽略某些文件

一般我们总会有些文件无需纳入 Git 的管理,通常都是些自动生成的文件,像是日志或者编译生成的文件。我们可以创建一个.gitignore 的文件,列出要忽略的文件模式。如.gitignore内容有:

*.[oa]

表示将.o和.a为后缀的文件不纳入git管理

6.      比较更新的差异

1)  git diff 查看暂存区与工作区的差异

2)  git diff –cached查看已暂存的文件与上次提交快照的差异

7.      提交更新

1)      Git commit 此种提交方式会打开一个编辑器,以便输入本次提交的说明

2)      Git commit –m 后面可以直接跟提交的说明

8.      跳过使用暂存区域git commit –a –m

9.      从git中移除文件

1)   git rm ,提交后,移除的文件不再纳入版本管理

2)   git rm –f 删除之前修改过并且已经放到暂存区的文件

3)   git rm –cached 在git版本管理中移除,但在工作区中仍然存在,这种情况一般与.gitignore联合使用。

10.  移动文件—git mv

11.  查看提交历史

1)   git log按提交时间列出所有的更新,最近的更新排在最上面

2)   git log –p -2 展开每次提交的差异,-2表示仅显示最近的两次更新

3)   git log –stat仅显示增减的行数统计

4)   git log --pretty=oneline 将第个提交放在一行显示

5)   git log--pretty=format:"%h - %an, %ar : %s"

常用格式点位符意义:

选项 说明

%H 提交对象(commit)的完整哈希字串

%h 提交对象的简短哈希字串

%T 树对象(tree)的完整哈希字串

%t 树对象的简短哈希字串

%P 父对象(parent)的完整哈希字串

%p 父对象的简短哈希字串

%an 作者(author)的名字

%ae 作者的电子邮件地址

%ad 作者修订日期(可以用 -date= 选项定制格式)

%ar 作者修订日期,按多久以前的方式显示

%cn 提交者(committer)的名字

%ce 提交者的电子邮件地址

%cd 提交日期

%cr 提交日期,按多久以前的方式显示

%s 提交说明

Git log其它常用选项:

选项                         说明

-p                                按补丁格式显示每个更新之间的差异。

--stat                           显示每次更新的文件修改统计信息。

--shortstat               只显示 --stat 中最后的行数修改添加移除统计。

--name-only             仅在提交信息后显示已修改的文件清单。

--name-status         显示新增、修改、删除的文件清单。

--abbrev-commit     仅显示 SHA-1 的前几个字符,而非所有的 40 个字符。

--relative-date         使用较短的相对时间显示(比如,“2 weeks ago”)。

--graph                      显示 ASCII 图形表示的分支合并历史。

--pretty                      使用其他格式显示历史提交信息。可用的选项包括 oneline,short,full,fuller 和 format(后跟指

定格式)。

 

12.  撤消操作

1)  git commit –amend 撤消刚才提交的操作,重新提交

2)  git reset HEAD file取消已经暂存的文件

3)  git checkout --取消对文件的修改

13.  查看当前的远程仓库

1)      git remote 列出远程库的简短名称

2)      git remote –v 显示对应的克隆地址

14.添加远程代码仓库的地址 gitremote add [shortname] [url]

Shortname为指定的简单的名字,如:

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

现在可以用字串 pb 指代对应的仓库地址了

 

14.  从远程仓库抓取数据 -- git fetch [remote-name],如上面的git fetch pb

15.  推送数据到远程仓库–git push [remote-name] [branch-name]

如果要把本地的 master 分支推送到 origin 服务器上(再次说明下,克隆操作会自动使用默认的master 和 origin 名字),可以运行下面的命令:git push origin master

 

16.  查看远程仓库信息 -- git remote show [remote-name]

17.  远程仓库的删除–git remote rm

18.  远程仓库的重命名–git remote rename

19.  显示已有标签 git tag

20.  新建标签git tag -a v1.0 -m 'my version 1.0'

21.  查看相应标签版本信息 git show 如 git show V1.0

22.  推送标签

1)   git push origin version,推送某个标签,如gitpush origin v1.0

2)  git push origin –tags推送所有标签

 

git使用技巧

1.      自动补全

下载 Git 的源代码,进入 contrib/completion 目录,会看到一个 git-completion.bash 文件。将此文件复制到你自己的用户主目录中(译注:按照下面的示例,还应改名加上点:cp git- completion.bash /.git-completion.bash),并把下面一行内容添加到你的 .bashrc 文件中:

source ~/.git-completion.bash

 

2.      Git 命令别名

偷懒的人最爱,可以打少几个字符,也可以将命令重新命名为自己容易记忆的。

使用git config 为命令设置别名。

如:

gitconfig --global alias.co checkou

gitconfig --global alias.br branch

gitconfig --global alias.ci commit

git config --global alias.st status

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: