git操作实用手册

2017-11-23  本文已影响12人  桃花島主

根据莫烦python笔记整理实用

设置用户名/Email

git config --global user.name "haohailiang"
git config --global user.email "646263409@qq.com"

查看设置

git config --list

建立空的git库

git init

新建文件并查看文件的状态

touch git-sample.js
git status
git status -s

git当前并没有纳入git版本管理

添加所有文件到git的版本管理

git add git-sample.js
# or
git add .

提交改变

git commit -m "第一次提交"

查看日志

会显示自己的名字和修改时间

git log
git log --oneline

查看当前的文档和之前提交文档的不同

git diff

文档提交到(git add .)暂存区后查看不同

git add .
git diff --cached

修改已 commit 的版本

touch 1.md
git add .
git commit -m "第一次提交"
git log --oneline
touch 2.md
git add 2.md
git commit --amend --no-edit    # "--no-edit": 不编辑, 直接合并到上一个 commit
git log --oneline

reset到add之前(staged状态-->>unstaged状态)

git add 1.md
git status -s # 绿色的M
git reset 1.md
git status -s # 红色的M

reset到commit之前(当前的修改会消失)

在版本库中历史未来往来自如
reset针对的是一个版本库

git reset --hard HEAD
git reset --hard HEAD^
git reset --hard HEAD~1
git reset --hard 5c5730d

再会到现在记录查看

站在过去, 想回到现在, 记录的查看

git reflog

回到从前

checkout针对单个文件, 单个文件修改成过去某个版本的内容, 版本同时也增加了

git checkout 5c5730d -- 1.md

查看分支

git log --oneline --graph

新建 && 切换到分支

git checkout -b  dev
git branch    # 当前所处分支的查看
git checkout master # 切换到主分支

在分支上修改并提交

"-am": add 所有改变 并直接 commit

git commit -am "在分支上修改提交"

合并分支

git checkout master
git merge dev

合并分支, 保留合并信息, 并有合并分支图

git checkout master
git merge --no-ff -m "保留dev和master分支的合并信息" dev
git log --oneline --graph

分支冲突

2个分支同时修改相同的文件再合并会产生冲突
去掉冲突信息重新提交下就可以了

git commit -am "解决冲突"

rebase [在自己本地的修改中使用,在共享分支中比较危险]

场景:分支A和共享分支B, 在修改A的同时, 共享分支B也在修改, 现在想利用共享分支B修改的新东西, 就用到rebase

git branch -D bran_A   # 删除分支

临时修改 (stash)

# 当前工作空间为dev
git stash #保存当前工作空间的进度
git status -s
git checkout -b boss
git commit -am "job from boss"
git checkout master
git merge --no-ff -m "merged boss job" boss
git commit -am "solve conflict"
git log --oneline --graph
git checkout dev
git stash list
git stash pop
git status -s

推送到github上

git remote rm origin
git remote add origin https://github.com/haohailiang/git-demo.git
git push -u origin master     # 推送本地 master 去 origin
git push -u origin dev        # 推送本地 dev  去 origin

设置用户名-密码

cd .git/
atom config
# 打开文件内容如下
[core]
    repositoryformatversion = 0
    filemode = false
    bare = false
    logallrefupdates = true
    symlinks = false
    ignorecase = true
[remote "origin"]
    url = https://用户名:密码@github.com/haohailiang/git-demo.git
    fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
    remote = origin
    merge = refs/heads/master

查看远程仓库

git remote show origin

查看远程仓库的所有分支

git branch -a

切换到远程分支

git clone master分支
git branch 远程分支名称
git pull

# checkout远程的dev分支,在本地起名为dev分支,并切换到本地的dev分支(一步到位的方法)
git checkout -b dev origin/dev

搭建个人站点

htts://haohailiang.github.io

搭建步骤

  1. 创建个人站点 --> 新建仓库 --> 仓库名必须是 haohailiang.github.io
  2. 在仓库下新建index.html
上一篇 下一篇

猜你喜欢

热点阅读