标签:执行 ref log stop creat modified ali dex 当前目录
[wangml@iZwz976helaylvgqok97prZ git]$ pwd /home/wangml/git [wangml@iZwz976helaylvgqok97prZ git]$ ls [wangml@iZwz976helaylvgqok97prZ git]$ git init Initialized empty Git repository in /home/wangml/git/.git/ [wangml@iZwz976helaylvgqok97prZ git]$ ls -a . .. .git
[wangml@iZwz976helaylvgqok97prZ git]$ vim first.txt [wangml@iZwz976helaylvgqok97prZ git]$ ls first.txt [wangml@iZwz976helaylvgqok97prZ git]$ git add first.txt [wangml@iZwz976helaylvgqok97prZ git]$ git commit -m "the first file" [master (root-commit) 8a16ecf] the first file 0 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 first.txt
[wangml@iZwz976helaylvgqok97prZ git]$ git status # On branch master # Changed but not updated: # (use "git add <file>..." to update what will be committed) # (use "git checkout -- <file>..." to discard changes in working directory) # # modified: readme.txt # no changes added to commit (use "git add" and/or "git commit -a")
git diff 查看仓库与上次提交后有什么不同(工作区文件与master中的区别)
[wangml@iZwz976helaylvgqok97prZ git]$ git diff diff --git a/readme.txt b/readme.txt index e69de29..aede7aa 100644 --- a/readme.txt +++ b/readme.txt @@ -0,0 +1,2 @@ +don‘t stop don‘t stop +laughing about it
[wangml@iZwz976helaylvgqok97prZ git]$ git log commit 47c7f76657196394d9d776668cb2206c1927e1c9 Author: wangml <wangml@iZwz976helaylvgqok97prZ.(none)> Date: Fri Aug 3 16:07:39 2018 +0800 20180803-16:07 commit bfa08dc84f3f6f0b235f5a99c5ad4993bdfeb1f3 Author: wangml <wangml@iZwz976helaylvgqok97prZ.(none)> Date: Wed Aug 1 21:49:30 2018 +0800 add readme.txt commit 8a16ecff65e153fb435f4c0fa5060fbc3bac0bc2 Author: wangml <wangml@iZwz976helaylvgqok97prZ.(none)> Date: Wed Aug 1 21:46:55 2018 +0800 the first file
[wangml@iZwz976helaylvgqok97prZ git]$ git log --pretty=oneline 47c7f76657196394d9d776668cb2206c1927e1c9 20180803-16:07 bfa08dc84f3f6f0b235f5a99c5ad4993bdfeb1f3 add readme.txt 8a16ecff65e153fb435f4c0fa5060fbc3bac0bc2 the first file
[wangml@iZwz976helaylvgqok97prZ git]$ git reset --hard HEAD~ HEAD is now at bfa08dc add readme.txt [wangml@iZwz976helaylvgqok97prZ git]$ cat readme.txt [wangml@iZwz976helaylvgqok97prZ git]$
[wangml@iZwz976helaylvgqok97prZ git]$ git reset --hard 47c7f76 HEAD is now at 47c7f76 20180803-16:07 [wangml@iZwz976helaylvgqok97prZ git]$ cat readme.txt don‘t stop don‘t stop laughing about it
[wangml@iZwz976helaylvgqok97prZ git]$ git reflog 47c7f76 HEAD@{0}: 47c7f76657196394d9d776668cb2206c1927e1c9: updating HEAD bfa08dc HEAD@{1}: HEAD~: updating HEAD 47c7f76 HEAD@{2}: commit: 20180803-16:07 bfa08dc HEAD@{3}: commit: add readme.txt 8a16ecf HEAD@{4}: commit (initial): the first file
注意:Git跟踪并管理的是修改,而非文件
[wangml@iZwz976helaylvgqok97prZ git]$ cat readme.txt don‘t stop don‘t stop laughing about it test for diff [wangml@iZwz976helaylvgqok97prZ git]$ vim readme.txt [wangml@iZwz976helaylvgqok97prZ git]$ cat readme.txt don‘t stop don‘t stop laughing about it test for diff checkout... [wangml@iZwz976helaylvgqok97prZ git]$ git checkout -- readme.txt [wangml@iZwz976helaylvgqok97prZ git]$ cat readme.txt don‘t stop don‘t stop laughing about it test for diff
[wangml@iZwz976helaylvgqok97prZ git]$ cat first.txt test for diff [wangml@iZwz976helaylvgqok97prZ git]$ vim first.txt [wangml@iZwz976helaylvgqok97prZ git]$ cat first.txt test for diff checkout... [wangml@iZwz976helaylvgqok97prZ git]$ git add first.txt [wangml@iZwz976helaylvgqok97prZ git]$ vim first.txt [wangml@iZwz976helaylvgqok97prZ git]$ cat first.txt test for diff checkout... checkout2... [wangml@iZwz976helaylvgqok97prZ git]$ git checkout -- first.txt [wangml@iZwz976helaylvgqok97prZ git]$ cat first.txt test for diff checkout...
[wangml@iZwz976helaylvgqok97prZ git]$ cat readme.txt don‘t stop don‘t stop laughing about it test for diff checkout... [wangml@iZwz976helaylvgqok97prZ git]$ vim readme.txt [wangml@iZwz976helaylvgqok97prZ git]$ cat readme.txt don‘t stop don‘t stop laughing about it test for diff checkout... reset... [wangml@iZwz976helaylvgqok97prZ git]$ git add readme.txt [wangml@iZwz976helaylvgqok97prZ git]$ git status # On branch master # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # modified: first.txt # modified: readme.txt # [wangml@iZwz976helaylvgqok97prZ git]$ git reset HEAD readme.txt Unstaged changes after reset: M readme.txt [wangml@iZwz976helaylvgqok97prZ git]$ git status # On branch master # modified: readme.txt
[wangml@iZwz976helaylvgqok97prZ git]$ rm test.txt [wangml@iZwz976helaylvgqok97prZ git]$ ls first.txt readme.txt [wangml@iZwz976helaylvgqok97prZ git]$ git checkout -- test.txt [wangml@iZwz976helaylvgqok97prZ git]$ ls first.txt readme.txt test.txt
git rm filename + git commit 从版本库中删除一个文件,可以使用 git reset 恢复
[wangml@iZwz976helaylvgqok97prZ git]$ ls first.txt readme.txt test.txt [wangml@iZwz976helaylvgqok97prZ git]$ git add test.txt [wangml@iZwz976helaylvgqok97prZ git]$ git commit -m "add test.txt" [master 7406bd5] add test.txt 1 files changed, 2 insertions(+), 0 deletions(-) create mode 100644 test.txt [wangml@iZwz976helaylvgqok97prZ git]$ git rm test.txt rm ‘test.txt‘ [wangml@iZwz976helaylvgqok97prZ git]$ ls first.txt readme.txt [wangml@iZwz976helaylvgqok97prZ git]$ git commit -m "delete test.txt" [master e6a2486] delete test.txt 0 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 test.txt [wangml@iZwz976helaylvgqok97prZ git]$ ls first.txt readme.txt [wangml@iZwz976helaylvgqok97prZ git]$ git log commit e6a2486a711c71e7703804123008afe1e3aef2a1 Author: wangml <wangml@iZwz976helaylvgqok97prZ.(none)> Date: Sat Aug 4 16:42:04 2018 +0800 delete test.txt ... [wangml@iZwz976helaylvgqok97prZ git]$ git reset --hard 7406bd59979f1207f6dad4538 HEAD is now at 7406bd5 add test.txt [wangml@iZwz976helaylvgqok97prZ git]$ ls first.txt readme.txt test.txt
[wangml@iZwz976helaylvgqok97prZ git]$ git branch var [wangml@iZwz976helaylvgqok97prZ git]$ git checkout var Switched to branch ‘var‘
git branch 查看当前分支
[wangml@iZwz976helaylvgqok97prZ git]$ git branch
master
* var
在新创建的分支中做的改变对源分支没有影响,如下示例:在 var 分支中 对test.txt文件
[wangml@iZwz976helaylvgqok97prZ git]$ vim test.txt [wangml@iZwz976helaylvgqok97prZ git]$ cat test.txt branch... var [wangml@iZwz976helaylvgqok97prZ git]$ git add test.txt [wangml@iZwz976helaylvgqok97prZ git]$ git commit -m "branch var..." [var d991370] branch var... 1 files changed, 1 insertions(+), 0 deletions(-) [wangml@iZwz976helaylvgqok97prZ git]$ git checkout master Switched to branch ‘master‘ [wangml@iZwz976helaylvgqok97prZ git]$ cat test.txt [wangml@iZwz976helaylvgqok97prZ git]$
git merge 分支名 合并指定分支到当前所在的分支,如下示例:将 var 分支合并到 当前
[wangml@iZwz976helaylvgqok97prZ git]$ cat test.txt [wangml@iZwz976helaylvgqok97prZ git]$ git branch * master var [wangml@iZwz976helaylvgqok97prZ git]$ cat test.txt [wangml@iZwz976helaylvgqok97prZ git]$ git merge var Updating 7406bd5..d991370 Fast-forward test.txt | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) [wangml@iZwz976helaylvgqok97prZ git]$ cat test.txt branch... var
[wangml@iZwz976helaylvgqok97prZ git]$ git branch * master var [wangml@iZwz976helaylvgqok97prZ git]$ git branch -d var Deleted branch var (was d991370). [wangml@iZwz976helaylvgqok97prZ git]$ git branch * master
[wangml@iZwz976helaylvgqok97prZ git]$ git status # On branch var # Changed but not updated: # (use "git add <file>..." to update what will be committed) # (use "git checkout -- <file>..." to discard changes in working directory) # # modified: new.txt # no changes added to commit (use "git add" and/or "git commit -a") [wangml@iZwz976helaylvgqok97prZ git]$ git stash Saved working directory and index state WIP on var: 6fa8864 new file HEAD is now at 6fa8864 new file [wangml@iZwz976helaylvgqok97prZ git]$ git status # On branch var nothing to commit (working directory clean)
git stash list 列出已储存的工作空间
[wangml@iZwz976helaylvgqok97prZ git]$ git stash list stash@{0}: WIP on var: 6fa8864 new file
[wangml@iZwz976helaylvgqok97prZ git]$ git stash apply # On branch var # Changed but not updated: # (use "git add <file>..." to update what will be committed) # (use "git checkout -- <file>..." to discard changes in working directory) # # modified: new.txt # no changes added to commit (use "git add" and/or "git commit -a") [wangml@iZwz976helaylvgqok97prZ git]$ git stash drop Dropped refs/stash@{0} (fc7113d17f35a62b46cd7142c20ad1efa5f1d6b4)
标签:执行 ref log stop creat modified ali dex 当前目录
原文地址:https://www.cnblogs.com/lnlin/p/9435921.html