天天看點

git上傳本地代碼及指令

通過git clone 遠端位址,克隆項目以後在本地修改或添加項目送出到github的操作步驟:

1、git init 初始化本地項目

2、git add . 如果添加某個特定的檔案,把“.”換成要add的檔案名即可

3、git commit -m “注釋語句”

4、git remote add origin “遠端項目位址”

5、git pull origin master

6、git push -u origin master 這時輸入自己的github上的username和password回車後到github上即可看到是否上傳成功

git的其他指令及使用

配置使用者資訊

git config --global user.name 使用者名

git config --global user.email 郵箱

初始化本地倉庫

git init

初始化遠端倉庫

git init --bare

把工作目錄檔案添加到本地暫存區

git add 檔案清單

git add *

把本地暫存區中檔案添加到本地倉庫

git commit -m 備注資訊

git commit -a -m 備注資訊 (-a隻能送出已修改的檔案,不能送出未跟蹤檔案)

檢視目前狀态

git status

git diff檢視不同

git difftool 比較工作目錄和暫存區的不同(會進入vi模式,:q可以退出,不過對比需要退出兩次)

add的逆操作

git rm --cached 檔案清單

復原本地修改的内容

git checkout 檔案清單

git checkout . (復原所有的修改,慎重使用)

使用本地倉庫的快照進行復原

git reset

--hard 3種都發生

--soft 隻復原快照

--mixed (預設參數) 前兩個會發生,但不覆寫工作目錄

復原最後一次送出

git reset --hard HEAD^(即用送出清單裡的第二個版本覆寫最新版本)

復原所有的工作目錄和暫存區内容

git reset --hard HEAD

reset會做三種操作:

復原快照 用復原檔案覆寫暫存區内容 用復原檔案覆寫工作目錄

克隆遠端倉庫的項目

git clone 遠端倉庫位址 項目名稱

拉取遠端的分支(隻有先clone過才能拉取)

git pull 遠端倉庫位址 遠端分支名稱:本地分支名稱

推送分支到遠端倉庫

git push 遠端倉庫位址 本地分支名稱:遠端分支名稱

添加遠端倉庫别名

git remote add 别名 遠端倉庫位址

删除遠端倉庫别名

git remote remove 别名

檢視遠端倉庫别名的詳細資訊

git remote show 别名

檢視所有别名

git remote

分支操作

建立分支

git branch 分支名稱

切換分支

git checkout 分支名稱

建立并切換分支

git checkout -b 分支名稱

删除本地分支

git branch -d 分支名稱(如果沒有被合并,無法删除)

git branch -D 分支名稱(強制删除)

隻檢視本地分支

git branch

隻檢視遠端分支

git branch -r

檢視所有分支

git branch -a

删除遠端分支

git push origin :遠端分支名稱

git push origin --delete 遠端分支名稱

儲存目前狀态

git stash

恢複目前狀态

git stash pop

在github上面跑項目就使用git pages,建立一個名為greyfur.github.io的倉庫,然後通路該域名即可看到項目運作效果

-u參數是為了首次推到遠端倉庫後,在此送出直接git push就好,不用再寫origin master

推項目到github上

進入項目根目錄

git init 用于git初始化;

git add * 添加将所有檔案;(可以指定檔案)

git remote add origin ** ***代表github網站上建立好的項目目錄位址,此處用意為将本地代碼與github網站進行映射關聯

git commit -m "XXXXX" XXX代表此次送出的備注标題,此步驟為本地送出

git push -u origin master 将剛才送出的代碼進行推送到github上面,分支為master分支,可以更換其他分支

将修改好的項目推到遠端(前提是已經commit到了本地的倉庫中!)

方法一

$ git fetch origin master //從遠端的origin倉庫的master分支下載下傳代碼到本地的origin master

$ git log -p master.. origin/master//比較本地的倉庫和遠端參考的差別

$ git merge origin/master//把遠端下載下傳下來的代碼合并到本地倉庫,遠端的和本地的合并

$ git push //送出成功

方法二

$ git fetch origin master:temp //從遠端的origin倉庫的master分支下載下傳到本地并建立一個分支temp

$ git diff temp//比較master分支和temp分支的不同

$ git merge temp//合并temp分支到master分支

$ git branch -d temp//删除temp

$ git push //送出成功

git push 的各種版本詳解

$ git push origin 将目前分支推送到origin主機的對應分支,如果目前分支隻有一個追蹤分支,那麼主機名都可以省略。

$ git push 如果目前分支與多個主機存在追蹤關系,那麼這個時候-u選項會指定一個預設主機,這樣後面就可以不加任何參數使用git push。(預設隻推送目前分支 )

$ git push -u origin master 上面指令将本地的master分支推送到origin主機,同時指定origin為預設主機,後面就可以不加任何參數使用git push了

usage: git stash list 列舉出自己的暫存代碼

git stash show 檢視stash的詳情 git stash drop 丢棄stash git stash ( pop | apply ) 彈出棧中的stash git stash branch stash某個分之 git stash [save [--patch] 壓入棧stash git stash clear 清空

将遠端fork過來的項目同步到自己的倉庫

把組織裡的項目fork到自己本地

把自己 fork 的項目git clone到本地

git remote -v以看到目前項目的遠端倉庫配置(隻有自己的遠端項目)

git remote add upstream 原始項目倉庫的git位址在(這是一個指令)

再次git remote -v檢視是否已添加好

git fetch upstream

git merge upstream/master

補充:upstream是遠端原始項目的别名,可改。在最後merge的時候會出現沖突,解決了,才能更新并提pull request

繼續閱讀