GitHub常用命令

2012-08-30 22:38:45

分类: 项目管理

1 Git简介

Git是用C语言开发的分布版本控制系统。版本控制系统可以保留一个文件集合的历史记录,并能回滚到另外一个状态(历史记录状态)。对于任何一个文件,在 Git 内都只有三种状态:已提交(committed),已修改 (modified)和已暂存(staged)。已提交表示该文件已经被安全地保存在本地数据库中了;已修改表示修改了某个文件,但还没有提交保存;已暂存表示把已修改的文件放在下次提交时要保存的清单中。

2 Git命令基本格式

一般情况下,Git的命令都是git [command] [option] [argument]格式。其中 command指的是某种操作命令,比如config,mv,rm,pull,push等等。而option和 argument指的是操作命令后面的具体参数,比如:

git config --golobal user.name="hic"

其中,config指的就是配置命令,接着后面跟上配置的具体参数,其中–global指的是对全局配置生效,后面的user.name就是对用户名进行设置。

3 配置文件

配置文件是从事所有所有工作的基础,在这里配置文件决定了工作时候的用户,邮箱,以及默认编辑器等等常用的配置参数,下面就先说一说配置文件。

在Git中,配置文件有三大类,分别放在不同的位置。

/etc/gitconfig

系统中所有用户都普遍适用的配置。git config –system就是用来配置这个文件的。

 ~/.gitconfig

用户目录下的配置文件,该文件只适用于该用户。git config –global就是用来配置这个文件的。

~/*/.git/config

这是当前项目的配置文件,仅对该项目适用。

注意:每一级别的配置,都会覆盖上层的相同配置。

3.1 配置信息

用户名设置

git config --system user.name "hic"

git config --global user.name "hic" git config user.name "hic"

电子邮件

git config --global user.email "[email protected]"

设置文本编辑器,默认为vi,这里设置为emacs

git config --global core.editor emacs

查看配置信息

git config --list

如果要查看某个特定的环境变量,只要把它的名字放到最后即可

git config user.name

4 选择工作目录

选择一个工作目录,开始工作,同时我们添加一些文件和目录。

~$ mkdir test

~$ cd test/

~/test$ ls

~/test$ echo "Hello world! " > README

~/test$ echo "This is a test! " > file

5 初始化

~/test$ git init Initialized empty Git repository in /home/hic/test/.git/

~/test$ la file .git README

执行这条命令之后,在test目录下会出现一个隐藏的.git目录,该目录会保存工程中所有的信息。

6 Git中文件的三种状态

在Git中,文件只有三种状态,已修改,已暂存和已提交。这三个文件分别放在工作目录,暂存区域和git目录。当一个文件修改完毕之后,它仍然在工作目录;只有当它被add之后,才会进入暂存区域,文件状态变为已暂存;最后,当文件被 commit之后,它就会进去git目录区域。这三个文件状态非常重要,请慢慢理解。

7 add命令暂存已修改文件

接着上面的初始化。当初始化之后,在test目录下,有README,file和.git/三个文件或目录,其中.git/是在初始化之后生成的。

此时在test中的文件都是存在于工作目录区域,尚未添加到暂存区。使用下面的命令可以查看到如果此时我要修改README文件。

~/test$ git status

# On branch master #

# Initial commit #

# Untracked files:

# (use "git add <file>..." to include in what will be committed) #

# README

# file nothing added to commit but untracked files present (use "git add" to track)

你会发现,README和file文件均是Untracked。接着使用add命令将它们添加到暂存区。

~/test$ git add .

~/test$ git status

# On branch master #

# Initial commit #

# Changes to be committed:

# (use "git rm --cached <file>..." to unstage) #

# new file: README

# new file: file #

此时的文件均已放在暂存区,其中git add . 就是将本目录下所有文件暂存。

8 commit命令提交已暂存文件

暂存区其实更像是一个缓冲区域,只有将文件commit到git目录区域才表示真正的提交。其中commit命令提交的时候,需要对提交内容进行说明,有两种方法,一种是使用 -m "Message" 指令,这适用与比较短小的信息;另外一种就是使用编辑器进行编辑,前面设定的编辑器就是为它服务的,默认编辑器是vi,不过我这里设定的是emacs。

在这里,我使用-m参数。其中-a选项,表示提交所有在暂存区的文件,当然你也可以使用 git commit file README这样的方式来提交。

~/test$ git commit -a -m "hahah"

[master (root-commit) 81fde76] hahah 2 files changed, 3 insertions(+) create mode 100644 README create mode 100644 file

这是再查看文件状态,就会发现没有可以提交的文件了。

~/test$ git status

# On branch master nothing to commit (working directory clean)

9 分支

如果事先没有作出任何的更改,一个项目是没有分支的,它只有一条主线,例如:

~/test$ git branch * master

这里master就是主干,就是整个开发的流程,它前面的星号表示当前开发的流程。

如果在开发过程中,我们突然需要添加某个功能,或者打上某个补丁,可以在 master主干上添加一个分支,比如host,例如:

~/test$ git checkout -b host

Switched to a new branch ‘host‘

~/test$ git branch

* host master

这个时候,你可以清楚的看到星号已经在host头上,表示当前已经切换到host上,你可以开发你的补丁,而不会打乱主干的开发。

如果你在开发过程中想要回到主干,可以使用checkout命令进行切换。

~/test$ git checkout master

Switched to branch ‘master‘

此时,你又回到主干了。

10 合并

当某个分支的开发结束后,你会需要将其合并到主干上,从而集中精力进行主干的开发。合并前只需要将指针切换到主干,即master,然后使用merge命令。

~/test$ git checkout host Switched to branch ‘host‘

~/test$ echo "lsdknl" >> file

~/test$ git add file

~/test$ git commit file -m "add somthing"

[host 0dacfd9] add somthing 1 file changed, 1 insertion(+)

~/test$ git checkout master Switched to branch ‘master‘

~/test$ git merge host Updating 81fde76..0dacfd9 Fast-forward file | 1 + 1 file changed, 1 insertion(+)

此时的host分支已经失去作用了,可以将删除。

~/test$ git branch -d host Deleted branch host (was 0dacfd9).

11 远程库操作

11.1 查看当前远程库

git remote

11.2 添加远程库

git remote add emacs git://github.com/lishuo/emacs

11.3 从远程库抓取数据

git fetch [remote-name]

11.4 推送数据到远程仓库

git push [remote-name] [branch-name]

11.5 查看远程仓库

git remote [remote-name]

11.6 远程仓库的删除和重命名

git remote rm [remote-name] git remotw rename form-name to-name

时间: 2024-10-13 11:41:30

GitHub常用命令的相关文章

Linux 使用 github 常用命令

Linux 使用 github  常用命令 今天整理一下常用的 github 命令,自己只是一个编程小白,有些地方可能做的不是很好,仅仅用作自己的学习使用. 创建一个文件夹用于存放github仓库 mkdir 文件夹名称 如果已经存在会提示给你,因为我创建了所以说目标文件已经存在. git --help 命令 git --help [email protected]:~/Desktop$ git --help 用法:git [--version] [--help] [-C <path>] [-

Ubuntu GitHub 常用命令

发现以前的学习方法有一些问题,接下来学习一门新的技术和方法,学会使用博客把用的知识点,提炼出来,方便以后自己的学习还有使用. 1.安装 Ubuntu Linux,通过一条sudo apt-get install git就可以直接完成Git的安装 2.创建版本库 什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以"还原"

Git与GitHub常用命令

说在前面的话,本文是跟着张哥的 GitHub 系列教程操作的,张哥微信公众号: googdev 雾艹-.. 一直在出差(借口)- 看了一下两个月没写博客了,真是太TM可怕了!!! 赶紧补一发,压压惊 git 注:在使用的任何的 git 命令前,都要切换到 git 项目目录下 git init 初始化一个 git 仓库 git status 查看当前 git 仓库的状态 git add file 修改 file 文件的状态为添加,并没有提交,只是存在缓存区 git rm –cached file

GitHub常用命令及使用

GitHub使用介绍 摘要: 常用命令: git init 新建一个空的仓库git status 查看状态git add . 添加文件git commit -m '注释' 提交添加的文件并备注说明git remote add origin [email protected]:jinzhaogit/git.git 连接远程仓库git push -u origin master 将本地仓库文件推送到远程仓库git log 查看变更日志git reset --hard 版本号前六位 回归到指定版本gi

github常用命令汇总

创立版本库 mkdir Baiducd Baidugit init SSHssh-keygen -t -rsa -C "[email protected]"(在github上new SSH,内容为id_rsa.pub) 添加远程库(github上新建git仓库,选择REAMDE.md)git remote add origin [email protected]:TaylorApril/Baidu.gitgit push -u origin master(报错)git pull --r

gitHub 常用命令 与 合并冲突问题

git branch 查看所在当前分支(仓库) git pull 刷新当前分支(仓库)文件到本机 git status 查看状态提示On branch master Your branch is up to date with 'origin/master'.nothing to commit, working tree clean,在分支大师,您的分支是最新的'origin / master'.什么都没有,工作树干净 git checkout master 切换到分支master    如果切

[Github] 常用命令

cd //项目文件 git push -u origin master // 发布一个名origin 的master git push -u origin master // 发布一个名origin 的master git tag -m "Tag" tagName // 本地创建一个名为 tagName 的tag git push origin --tags // 把全部的tag都发到origin那去 以上个人理解

Git常用命令及场景

Git命令推送到远程分支 1.登录GitHub创建一个远程仓库. https://github.com 2.git init 本地创建一个目录,并初始化一个git仓库. 3.git add 添加文件到当前目录下,然后执行git add ,将“修改”从当前工作区存放到暂存区. 4.it commit -m "注释语句" 将暂存区中存放的文件提交到本地git仓库. 5.git remote add origin https://远程仓库地址 将本地代码库的当前分支与远程的代码库分支相关联.

github创建远程仓库和git常用命令

git创建远程仓库 首先到github页面上创建仓库(repository)如下: 然后初始化文件夹为仓库,并提交到远程仓库,如下: [[email protected] aa]# git init Initialized empty Git repository in /data/mydata/aa/.git/ [[email protected] aa]# git add . [[email protected] aa]# git commit -m "first commit"