标签:merge tracking stat pull 子目录 dev 多个 lis bae
该笔记总结廖雪峰Git教程, 参考网站: https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
$ git config --global user.name "Your name"
$ git config --global user.email "email@example.com"
$ mkdir git #创建git目录
$ cd git
$ git init #创建repository
$ ls -a
把文件添加入repository
# Snapshots the file in preparation for versioning
$ git add [file]
# Records file snapshots permanently in version history
$ git commit -m "[descriptive message]"
# Lists all new or modified files to be committed
$ git status
# Shows file differences not yet staged
$ git diff
# Lists version history for the current branch
$ git log
$ git log --pretty=oneline
$ git reset --hard HEAD^
版本回退后, 新版本会消失, 如果想恢复至新版本必须知道新版本的ID号, 之前 git log 会打印出新版本的ID号.
# 版本号没必要写全,前几位就可以了,Git会自动去找。当然也不能只写前一两位,因为Git可能会找到多个版本号,就无法确定是哪一个了。
$ git reset --hard ID
$ git checkout -- fileName
二: 文件已经 git add, 提交至stage中, 此时需要首先将文件从stage中撤回至work directory中, r然后成为一的情况.
$ git reset HEAD fileName
删除文件:
# Deletes the file from the working directory and stages the deletion
$ git rm [file]
$ git commit -m "message"
如果误删想要回复文件, 使用如下命令:
$ git checkout -- [file]
$ ssh-keygen -t rsa -C "youremail@example.com"
如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。
$ git remote add origin git@github.com:***/***.git
添加后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。
$ git push -u origin master
从现在起,只要本地作了提交,就可以通过命令, 把本地master分支的最新修改推送至GitHub:
$ git push origin master
第一次链接时会出现警告, 该警告关于SSH警告, 直接Yes即可.
$ git clone git@github.com:***/***.git
#表示创建并切换
$ git checkout -b dev
#or
$ git branch dev
$ git checkout dev
# Lists all local branches in the current repository
$ git branch
# Switches to the specified branch and updates the working directory
$ git checkout master
# Combines the specified branch’s history into the current branch
$ git merge dev
# Deletes the specified branch
$ git branch -d [branch-name]
# 分支合并图
$ git log --graph
# 禁用Fast forward模式, merge时生成新的commit
$ git merge --no-ff -m "merge with no-ff" [branch-name]
# Temporarily stores all modified tracked files
$ git stash
# Lists all stashed changesets
$ git stash list
# 强行删除
$ git branch -D feature-vulcan
# 查看远程库的信息, 加-v会将信息详细化
$ git remote
# 打一个新标签, 加ID号可为以前的增加标签
$ git tag <name> [commit ID]
# 查看标签
$ git tag
# 查看标签信息
$ git show <tagname>
# 删除标签
$ git tag -d <tagname>
# 推送某个标签到远程,使用命令
$ git push origin <tagname>
# 一次性推送全部尚未推送到远程的本地标签
$ git push origin --tags
# 删除远程标签
$ git tag -d <tagname>
$ git push origin :refs/tags/<tagname>
转载清注明出处, O(∩_∩)O谢谢!
标签:merge tracking stat pull 子目录 dev 多个 lis bae
原文地址:http://www.cnblogs.com/HurryXin/p/7499140.html