常用操作(配置基本的信息):
$ git config --global user.name "John Doe"
$ git config --global user.email [email protected]
git 分支查看與切換
1 2 |
|
1 2 3 4 5 |
|
Git branch -r 列出遠程分支
git branch -a列出本地和遠程分支
誤操作
1,如果碰到新增代碼到本地庫後,git commit後 但是忘記push後 重新又拉取了一次代碼,然後又回滾了一次(git revert)
這個時候本地新增的代碼會被全部的覆蓋,代碼全丟了
可以用git reflog查看操作記錄
和git log不同,git log可以查看提交過的版本信息,而got reflog可以查看所有分支的操作記錄,包含已經被刪除的commit記錄。
然後git reset --hard 版本號 回滾到某版本,這樣就可以完美回退到之前的版本上去了的
pull操作的時候
拉取小程序代碼時提示:
error: Your local changes to the following files would be overwritten by merge:
xxx/xxx/xxx.wxml
Please, commit your changes or stash them before you can merge.
這個時候可以採取兩種操作:
1,$ git stash
這樣本地的所有修改就都被暫時存儲起來 。是用git stash list可以看到保存的信息:
暫存了本地修改之後,就可以pull了。
2,$ git pull
暫存了本地修改之後,就可以pull了。
3 $ git stash pop stash@{0}
系統提示如下類似的信息:
Auto-merging c/environ.c CONFLICT (content): Merge conflict in c/environ.c
意思就是系統自動合併修改的內容,但是其中有衝突,需要解決其中的衝突。
打開衝突的文件,會看到類似如下的內容:
git衝突內容
其中Updated upstream 和=====之間的內容就是pull下來的內容,====和stashed changes之間的內容就是本地修改的內容。碰到這種情況,git也不知道哪行內容是需要的,所以要自行確定需要的內容。
解決完成之後,就可以正常的提交了。
也可以採取方法2
如果希望用代碼庫中的文件完全覆蓋本地工作版本. 方法如下:
-
git reset --hard
-
git pull
直接回退上一個版本,然後再重新拉取