GitHub入门与实践一

2015-08-18 Lanffy 更多博文 » 博客 » GitHub »

git

原文链接 https://lanffy.github.io/2015/08/18/GitHub%E5%85%A5%E9%97%A8%E4%B8%8E%E5%AE%9E%E8%B7%B5%E4%B8%80
注:以下为加速网络访问所做的原文缓存,经过重新格式化,可能存在格式方面的问题,或偶有遗漏信息,请以原文为准。



安装

初始设置

设置姓名和邮箱地址

git config --global user.name "your name"
git config --global user.email "your email"

查看设置是否成功

git config --global user.name
git config --global user.email

提高命令输出的可读性

git config --global color.ui auto

此命令会使得各种命令的输出更具有可读性

创建GitHub帐号

设置SSH key

ssh-keygen -t rsa -C "your email"

输完命令后在命令窗口连续按下三次回车即可生成密钥。

Windows中密钥路径:C:\Users\Administrator\.ssh Administrator是登录Windows的用户名;

Linux(Mac)中密钥路径:~/.ssh.

id_rsa是私有密钥,id_rsa.pub是公开密钥

在GitHub中添加公开密钥

在GitHub中创建一个项目

常用Git操作

克隆

git clone git@github.com:lanffy/lanffy.github.io.git

提交与推送

git status -> 查看变更
git add . | --All | fileName -> 添加变更文件到暂存区
git commit -m "message" -> 提交
git pull origin branchName -> 拉取远程分支
git status -> 查看是否有冲突
git push -u origin branchName -> 推送变更,添加-u后以后的git pull后面的分支名就可以省略了
git commit -amend -> 修改上一次还没有push的commit
git rebase -i -> 压缩提交历史(待见详解)

查看提交日志

git log -> 查看提交日志
git log --pretty=short -> 只显示提交信息的第一行
git log fileName -> 只显示指定目录、文件的日志
git log -p fileName -> 显示指定文件的变动
git log --graph -> 以图表形式查看分支
git reflog -> 查看当前仓库执行过的操作日志

查看diff

git diff -> 查看当前工作树与暂存区的差别
git diff HEAD -> 查看工作树和最新提交的差别

分支

常用操作

git branch -> 查看本地所有分支,前面有*的表示当前分支
git checkout branchName -> 切换分支,前提是branchName分支存在
git checkout -b branchName -> 切换分支,若分支不存在则创建
git checkout - -> 切换到上一个分支
git checkout -t branchName origin/branchName ->

切换分支到branchName,若本地分支不存在则创建,且与远程分支origin/branchName相关联,前提是远程分支存在,-t也可以用-b,但前提是要执行git fetch --all

分支合并

将branchName分支合并到master

git checkout master -> 切换到master分支
git merge --no-ff branchName -> 合并branchName到master,参数--no--ff表示在历史记录中明确记录本次合并

回溯历史版本

git reset --hard hashCode -> 使当前仓库回溯到指定状态,其中hashCode为状态的哈希值

第一部分完~