GitHub使用总结

安装Git

安装 MacPorts (http://www.macports.org) 。

装好 MacPorts后,用下面的命令安装 Git:

sudo port install git core svn doc bash_completion gitweb

初次运行Git的配置

配置用户信息

git config --global user.name "XXX" —— 配置用户名

git config --global user.email [email protected] ——配置用户邮箱

注:如果要在某个特定的项目中使用其他名字或者电邮,只要去掉--global选项重新配置即可。

查看用户信息

git config --list

也可以直接查阅某个环境变量的设定,只要把特定的名字跟在后面即可

git config user.name

Git仓库

(1)创建本地版本库

                 到项目所在目录

                 git init

                 git add .

                 git commit -m '描述提交信息'

(2)添加远程仓库

                git remote add origin 仓库地址(将本地仓库关联远程仓库)

                 git push -u origin master 将内容推送到Github仓库(第一次提交加 -u)

(2)从已有仓库克隆

                 git clone 仓库地址

查看仓库状态

git status

查看文件更改

git diff

查看提交历史

git log

git log --graph(分支合并图)

git log --pretty=oneline(简化日志)

创建本地分支

git branch 分支名

切换到分支

git checkout 分支名

创建并切换到该分支

git checkout -b 分支名

合并分支

切换到目标分支,然后 git merge 分支名,将分支合并到目标分支。

git merge 分支名

git merge --no-ff -m '' 分支名(保存分支历史)

解决冲突

git mergetool

查看所有分支

git branch -a

git branch -av 带log

查看所有本地分支

git branch

查看所有远程分支

git branch -r

查看当前分支已合并了哪些分支(便于整理分支,将已被合并的无用分支删除)

git branch --merged

查看尚未合并的分支

git branch --no-merged

删除本地分支

git branch -d 分支名

删除远程分支

git push origin :分支名

将远程分支拉到本地

git checkout -b 本地分支名 origin/目标远程分支名

git fetch origin 远程分支名:本地分支名,git fetch origin   /   然后 git merge origin/远程分支名

远程仓库重命名

git remote rename 旧名字 新名字

查看当前的远程仓库

git remote -v

暂存工作现场

git stash

恢复工作现场

git stash pop

查看工作现场

git satsh list

撤销修改

git checkout -- 文件名

版本回退

在git中,HEAD代表当前的版本,HEAD^代表上一个版本,HEAD^^代表向上返回两次,上100版本是HEAD~100

git reset HEAD file  把当前修改撤销回工作区原来的样子

git reset --hard HEAD^  回退到上一个版本

git reset --hard HEAD^^  回退到上上一个版本

git reset --hard HEAD~回退到往上num个版本,例如:HEAD~10

git reset --hard 版本ID  回退到某个版本,例如:3628164版本号不用写全


多人合作

1.创建本地分支

git checkout -b 分支名

2.推送本地分支

git push origin 本地分支名

3.将远程分支抓取到本地

git checkout -b 本地分支名 origin/远程分支名

4.更新最新提交到本地

git pull origin 分支名

如果更新失败,则需要先建立远程与本地的关联。

git branch --set-upstream 本地分支名 origin/远程分支名


*注意

创建远程仓库之前,一定要设置ssh key,因为你的本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送。

你可能感兴趣的:(GitHub使用总结)