github初步學習

不知不覺中發現代碼的數量多了起來,在電腦上存放太過於臃腫,並且還不能換時空工作,學習點github使用方法

Git 使用
在文件夾 helloworld 下
git init//建立git可以記錄的文件夾
vim helloworld.c//新建文件
gti add . //把這個文件夾下的文件都添加進暫存區
git commit //把暫存區域的東西 添加註釋後 放到倉庫裏
在github網站建立新的文件夾
https://github.com/bolvtin/git_push.git
git remote add origin https://github.com/bolvtin/git_push.git// 把遠程的作爲origin
添加
git push origin master //把本地的與遠程的github同步
git log//查看日誌
git reset --hard HEAD~1//退回到上1個版本
Git基本常用命令如下:
mkdir: XX (創建一個空目錄 XX指目錄名)
pwd: 顯示當前目錄的路徑。
git init 把當前的目錄變成可以管理的git倉庫,生成隱藏.git文件。
git add XX 把xx文件添加到暫存區去。
git commit –m “XX” 提交文件 –m 後面的是註釋。
git status 查看倉庫狀態
git diff XX 查看XX文件修改了那些內容
git log 查看歷史記錄
git reset --hard HEAD^ 或者 git reset --hard HEAD~ 回退到上一個版本
(如果想回退到100個版本,使用git reset –hard HEAD~100 )
git remote add origin https://github.com/tugenhua0707/testgit 關聯一個遠程庫
git push –u(第一次要用-u 以後不需要) origin master 把當前master分支推送到遠程庫
git clone https://github.com/tugenhua0707/testgit 從遠程庫中克隆
git checkout –b dev 創建dev分支 並切換到dev分支上
git branch 查看當前所有的分支
git checkout master 切換回master分支
git merge dev 在當前的分支上合併dev分支
git branch –d dev 刪除dev分支
git branch name 創建分支
git remote 查看遠程庫的信息
git remote –v 查看遠程庫的詳細信息
git push origin master Git會把master分支推送到遠程庫對應的遠程分支上



git stash 把當前的工作隱藏起來 等以後恢復現場後繼續工作
git stash list 查看所有被隱藏的文件列表
git stash apply 恢復被隱藏的文件,但是內容不刪除
git stash drop 刪除文件
git stash pop 恢復文件的同時 也刪除文件
cat XX 查看XX文件內容
git reflog 查看歷史記錄的版本號id
git checkout -- XX 把XX文件在工作區的修改全部撤銷。
git rm XX 刪除XX文件
學習網址
https://mp.weixin.qq.com/s?
__biz=MjM5OTA1MDUyMA==&mid=209787875&idx=2&sn=78ace138939ce
8ad9807c3d4b42db92c&scene=1&srcid=0128ltNc9JWKMHujNa8CpFkj&pass
_ticket=ThJ8DKwVtgjXKCQBUtoPioXF0t0ZYhLL%2BDLX
%2Bedo1NyE8cYSUXJV4yFcr%2B7Crhuv#rd
https://mp.weixin.qq.com/s?
__biz=MzAxODI5ODMwOA==&mid=409525257&idx=1&sn=54b046e372fcde
787c0e2e89e0da1def&scene=1&srcid=01289s7WbQw3HHpHLGOjPQA2&pas
s_ticket=ThJ8DKwVtgjXKCQBUtoPioXF0t0ZYhLL%2BDLX
%2Bedo1NyE8cYSUXJV4yFcr%2B7Crhuv#rd
https://mp.weixin.qq.com/s?
__biz=MzAxODI5ODMwOA==&mid=410169219&idx=1&sn=d437db624c0e9
80f5bb4ae4546880ba7&scene=1&srcid=0128U8ve6k68x5mWfN0ew8yT&pas
s_ticket=ThJ8DKwVtgjXKCQBUtoPioXF0t0ZYhLL%2BDLX
%2Bedo1NyE8cYSUXJV4yFcr%2B7Crhuv#rd
另外github開源中國上,發現別人總結的,參考網址http://www.oschina.net/question/156344_148084

git init                                                  # 初始化本地git倉庫(創建新倉庫)
git config --global user.name "xxx"                       # 配置用戶名
git config --global user.email "[email protected]"              # 配置郵件
git config --global color.ui true                         # git status等命令自動着色
git config --global color.status auto
git config --global color.diff auto
git config --global color.branch auto
git config --global color.interactive auto
git clone git+ssh://[email protected]/VT.git             # clone遠程倉庫
git status                                                # 查看當前版本狀態(是否修改)
git add xyz                                               # 添加xyz文件至index
git add .                                                 # 增加當前子目錄下所有更改過的文件至index
git commit -m 'xxx'                                       # 提交
git commit --amend -m 'xxx'                               # 合併上一次提交(用於反覆修改)
git commit -am 'xxx'                                      # 將add和commit合爲一步
git rm xxx                                                # 刪除index中的文件
git rm -r *                                               # 遞歸刪除
git log                                                   # 顯示提交日誌
git log -1                                                # 顯示1行日誌 -n爲n行
git log -5
git log --stat                                            # 顯示提交日誌及相關變動文件
git log -p -m
git show dfb02e6e4f2f7b573337763e5c0013802e392818         # 顯示某個提交的詳細內容
git show dfb02                                            # 可只用commitid的前幾位
git show HEAD                                             # 顯示HEAD提交日誌
git show HEAD^                                            # 顯示HEAD的父(上一個版本)的提交日誌 ^^爲上兩個版本 ^5爲上5個版本
git tag                                                   # 顯示已存在的tag
git tag -a v2.0 -m 'xxx'                                  # 增加v2.0的tag
git show v2.0                                             # 顯示v2.0的日誌及詳細內容
git log v2.0                                              # 顯示v2.0的日誌
git diff                                                  # 顯示所有未添加至index的變更
git diff --cached                                         # 顯示所有已添加index但還未commit的變更
git diff HEAD^                                            # 比較與上一個版本的差異
git diff HEAD -- ./lib                                    # 比較與HEAD版本lib目錄的差異
git diff origin/master..master                            # 比較遠程分支master上有本地分支master上沒有的
git diff origin/master..master --stat                     # 只顯示差異的文件,不顯示具體內容
git remote add origin git+ssh://[email protected]/VT.git # 增加遠程定義(用於push/pull/fetch)
git branch                                                # 顯示本地分支
git branch --contains 50089                               # 顯示包含提交50089的分支
git branch -a                                             # 顯示所有分支
git branch -r                                             # 顯示所有原創分支
git branch --merged                                       # 顯示所有已合併到當前分支的分支
git branch --no-merged                                    # 顯示所有未合併到當前分支的分支
git branch -m master master_copy                          # 本地分支改名
git checkout -b master_copy                               # 從當前分支創建新分支master_copy並檢出
git checkout -b master master_copy                        # 上面的完整版
git checkout features/performance                         # 檢出已存在的features/performance分支
git checkout --track hotfixes/BJVEP933                    # 檢出遠程分支hotfixes/BJVEP933並創建本地跟蹤分支
git checkout v2.0                                         # 檢出版本v2.0
git checkout -b devel origin/develop                      # 從遠程分支develop創建新本地分支devel並檢出
git checkout -- README                                    # 檢出head版本的README文件(可用於修改錯誤回退)
git merge origin/master                                   # 合併遠程master分支至當前分支
git cherry-pick ff44785404a8e                             # 合併提交ff44785404a8e的修改
git push origin master                                    # 將當前分支push到遠程master分支
git push origin :hotfixes/BJVEP933                        # 刪除遠程倉庫的hotfixes/BJVEP933分支
git push --tags                                           # 把所有tag推送到遠程倉庫
git fetch                                                 # 獲取所有遠程分支(不更新本地分支,另需merge)
git fetch --prune                                         # 獲取所有原創分支並清除服務器上已刪掉的分支
git pull origin master                                    # 獲取遠程分支master並merge到當前分支
git mv README README2                                     # 重命名文件README爲README2
git reset --hard HEAD                                     # 將當前版本重置爲HEAD(通常用於merge失敗回退)
git rebase
git branch -d hotfixes/BJVEP933                           # 刪除分支hotfixes/BJVEP933(本分支修改已合併到其他分支)
git branch -D hotfixes/BJVEP933                           # 強制刪除分支hotfixes/BJVEP933
git ls-files                                              # 列出git index包含的文件
git show-branch                                           # 圖示當前分支歷史
git show-branch --all                                     # 圖示所有分支歷史
git whatchanged                                           # 顯示提交歷史對應的文件修改
git revert dfb02e6e4f2f7b573337763e5c0013802e392818       # 撤銷提交dfb02e6e4f2f7b573337763e5c0013802e392818
git ls-tree HEAD                                          # 內部命令:顯示某個git對象
git rev-parse v2.0                                        # 內部命令:顯示某個ref對於的SHA1 HASH
git reflog                                                # 顯示所有提交,包括孤立節點
git show HEAD@{5}
git show master@{yesterday}                               # 顯示master分支昨天的狀態
git log --pretty=format:'%h %s' --graph                   # 圖示提交日誌
git show HEAD~3
git show -s --pretty=raw 2be7fcb476
git stash                                                 # 暫存當前修改,將所有至爲HEAD狀態
git stash list                                            # 查看所有暫存
git stash show -p stash@{0}                               # 參考第一次暫存
git stash apply stash@{0}                                 # 應用第一次暫存
git grep "delete from"                                    # 文件中搜索文本“delete from”
git grep -e '#define' --and -e SORT_DIRENT
git gc
git fsck


發佈了42 篇原創文章 · 獲贊 23 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章