直接提交當前分支
git add . && git commit -m ‘評價測驗’ && git pull origin `git branch | sed -n "/\* /s///p"` && git push origin `git branch | sed -n "/\* /s///p"`
coding 沒有配置ssh,使用賬號密碼clone
git clone http://yourname:[email protected]/name/project.git https 上傳o
創建分支
http://blog.csdn.net/guang11cheng/article/details/37757201
操作分支
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001375840038939c291467cc7c747b1810aab2fb8863508000
分支合并
https://www.cnblogs.com/mengdd/p/3585038.html
精品 git 操作流程
https://blog.csdn.net/zzh920625/article/details/78315127/
版本回退
git log --pretty=oneline 查看
git branch ----->git checkout ----> git reflog ---> git reset --hard HEAD@{0}
洗掉遠程分支 git branch -r ---->git branch -r -d
清空快取 可以讓暫存區的檔案洗掉了 .gitignore
git rm -r --cache .
常見問題
git merge origin/master --allow-unrelated-histories
第一次pull 不合并
git pull origin master --allow-unrelated-histories
兩個沒有相關歷史的庫 首次提交更新代碼
切換分支并創建分支 拉取遠程dev分支
git checkout -b dev origin/dev
例如在master分支執行 拉去dev分支合并到master分支
git merge dev
git status 查看當前分支的狀態
git checkout -- 檔案名字 撤銷當前修改的檔案
git rm text.txt 洗掉暫存區的檔案
git push -u origin master 第一次推送內容到遠程分支時候
-u引數代表 把本地的master推送到遠程master上,并把本地master和遠程master關聯起來
修復bug時,我們會通過創建新的bug分支進行修復,然后合并,最后洗掉;
當手頭作業沒有完成時,先把作業現場git stash一下,然后去修復bug,修復后,再git stash pop,回到作業現場,
git rm .env.production --cached 洗掉暫存區的檔案
2.2.不額外建立本地分支
代碼展示
//查詢當前遠程的版本
$ git remote -v
//獲取最新代碼到本地(本地當前分支為[branch],獲取的遠端的分支為[origin/branch])
$ git fetch origin master [示例1:獲取遠端的origin/master分支]
$ git fetch origin dev [示例2:獲取遠端的origin/dev分支]
//查看版本差異
$ git log -p master..origin/master [示例1:查看本地master與遠端origin/master的版本差異]
$ git log -p dev..origin/dev [示例2:查看本地dev與遠端origin/dev的版本差異]
//合并最新代碼到本地分支
$ git merge origin/master [示例1:合并遠端分支origin/master到當前分支]
$ git merge origin/dev [示例2:合并遠端分支origin/dev到當前分支]
ssh-keygen -t rsa -C "[email protected]"
直接推送當前所在的分支
命令git tag -a v0.1.0 -m "release 0.1.0 version" 創建附注標簽,
git 使用標簽
git tag -l 查看tag
git tag -d 洗掉tag
git push origin --tags 推送本地的所有標簽
git push origin tag名稱 推送指定的標簽
git show tag名稱 查看標簽
stash 使用
### 將所有未提交的修改(提交到暫存區)保存至堆疊中
$ git stash
### 給本次存盤加個備注,以防時間久了忘了
$ git stash save "存盤"
### 存盤未追蹤的檔案
$ git stash -u
### 查看存盤記錄
$ git stash list
在 Windows 上和 PowerShell 中,需要加雙引號
### 恢復后,stash 記錄并不洗掉
$ git stash apply "stash@{index}"
### 恢復的同時把 stash 記錄也刪了
$ git stash pop "stash@{index}"
### 洗掉 stash 記錄
$ git stash drop "stash@{index}"
### 洗掉所有存盤的進度
$ git stash clear
### 查看當前記錄中修改了哪些檔案
$ git stash show "stash@{index}"
### 查看當前記錄中修改了哪些檔案的內容
$ git stash show -p "stash@{index}"
git 合并代碼額外操作
git pull origin master
git pull --rebase origin master ###拉取master的代碼,合并到本地(使用rebase)
這里可以使用git pull origin master或者是 git pull --rebase origin master,這里pull是fetch+merge的操作,git pull --rebase是fetch+rebase的操作,rebase和merge都是合并代碼,他們主要區別是merge是一股腦的合并代碼,并且在發生沖突解決后會要提一條commit,而rebase是變基操作,它解決沖突后不會產生多余的commit記錄,這保證了分支的整潔和美觀,不過合并時多個commit有沖突的時候,rebase會一個一個的解決,在這種情況下會比較麻煩,這兩種操作視情況使用,
merge如果發生沖突就使用 git status 查看沖突的檔案,修改后直接git add . 然后git commit -m '****',然后git push 提交
rebase如果發生沖突就使用 git status 查看沖突的檔案,解決完所有的沖突后,git add . ,然后git rebase --continue繼續合并,然后git push 提交(注意如果使用rebase的方式的話,修改后提交不用commit)
https://git-scm.com/book/zh/v2/Git-工具-子模塊 git submodule使用
拉取含有子模塊的代碼
git clone --recurse-submodules https://github.com/chaconinc/MainProject
git下載github代碼慢問題
一定是使用 ssr的情況下
去自己的電腦的網路管理查看socks5查看代理埠 然后執行
走 HTTP 代理
git config --global http.proxy "http://127.0.0.1:1087"
git config --global https.proxy "http://127.0.0.1:1087"
走 socks5 代理
git config --global http.proxy "socks5://127.0.0.1:1086"
git config --global https.proxy "socks5://127.0.0.1:1086"
只針對github 做代理
# socks5
git config --global http.https://github.com.proxy socks5://127.0.0.1:1086
git config --global https.https://github.com.proxy socks5://127.0.0.1:1086
# http
git config --global http.https://github.com.proxy https://127.0.0.1:1087
git config --global https.https://github.com.proxy https://127.0.0.1:1087
只配置單個專案下git配置
進入到專案的.git檔案里面
例如:git config 不加--global http.https://github.com.proxy https://127.0.0.1:1087
SSH 形式
修改 ~/.ssh/config 檔案(不存在則新建):
ProxyCommand nc -x localhost:1086 %h %p
查看配置
git config --global --list
修改配置
git config --global --edit
取消設定
git config --global --unset http.proxy
git config --global --unset https.proxy
iterm2里面使用 在.zshrc 里面加入 source ~/.zshrc
使用 curl myip.ipip.net 測驗自己的ip 是否變了
alias proxy="export ALL_PROXY=socks5://127.0.0.1:1086"
alias unproxy="unset ALL_PROXY"
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/285570.html
標籤:PHP
下一篇:GO反射類實體
