一些git指令
一些git指令
詳細參考教程:https://blog.csdn.net/wangrenbao123/article/details/55511461
cd D:
(進入D盤)cd www
(進入www檔案)mkdir test
(在www裡面建立名稱為test的檔案)cd testgit
(進入testgit檔案)pwd
(用於顯示當前目錄)git init
(通過命令把這個目錄變成git可以管理的倉庫,此時testgit檔案裡面會新增一個.git檔案如果看不到可以點選檢視隱藏檔案看到)
如果要將某檔案比如readme.txt放進倉庫中可以輸入:
git add readme.txt
但可能會出現這樣的提示:
fatal: pathspec 'readme.txt' did not match any files
這說明在資料夾裡並沒有readme.txt這個檔案
去庫的資料夾下建立好readme.txt後,再次輸入:
git add readme.txt
成功
git status (來檢視是否還有檔案未提交)
Git指令用法
usage: git commit [] [–] …
-q, --quiet suppress summary after successful commit -v, --verbose show diff in commit message template
Commit message options
-F, --file <file> read message from file --author <author> override author for commit --date <date> override date for commit -m, --message <message> commit message -c, --reedit-message <commit> reuse and edit message from specified commit -C, --reuse-message <commit> reuse message from specified commit --fixup <commit> use autosquash formatted message to fixup specified commit --squash <commit> use autosquash formatted message to squash specified commit --reset-author the commit is authored by me now (used with -C/-c/--amend) -s, --signoff add Signed-off-by: -t, --template <file> use specified template file -e, --edit force edit of commit --cleanup <default> how to strip spaces and #comments from message --status include status in commit message template -S, --gpg-sign[=<key-id>] GPG sign commit Commit contents options -a, --all commit all changed files -i, --include add specified files to index for commit --interactive interactively add files -p, --patch interactively add changes -o, --only commit only specified files -n, --no-verify bypass pre-commit and commit-msg hooks --dry-run show what would be committed --short show status concisely --branch show branch information --ahead-behind compute full ahead/behind values (EXPERIMENTAL) --porcelain machine-readable output --long show status in long format (default) -z, --null terminate entries with NUL --amend amend previous commit --no-post-rewrite bypass post-rewrite hook -u, --untracked-files[=<mode>] show untracked files, optional modes: all, normal, no. (Default: all)
git warning: LF will be replaced by CRLF in
解決辦法:
輸入如下指令:
git config core.autocrlf false
git commit -m
“修改操作記錄” (用來提交修改記錄)
git reset --hard
版本號 (用來恢復檔案到之前的某個版本)
git reflog
(檢視之前的版本號)
如果所做的修改操作並沒有git修改記錄則可以直接撤銷修改操作,撤銷指令為:git checkout -- readme.txt
工作區:就是你在電腦上看到的目錄,比如目錄下testgit裡的檔案(.git隱藏目錄版本庫除外)。或者以後需要再新建的目錄檔案等等都屬於工作區範疇。
版本庫(Repository):工作區有一個隱藏目錄.git,這個不屬於工作區,這是版本庫。其中版本庫裡面存了很多東西,其中最重要的就是stage(暫存區),還有Git為我們自動建立了第一個分支master,以及指向master的一個指標HEAD。
我們前面說過使用Git提交檔案到版本庫有兩步:
第一步:是使用 git add 把檔案新增進去,實際上就是把檔案新增到暫存區。
第二步:使用git commit提交更改,實際上就是把暫存區的所有內容提交到當前分支上。
rm b.txt
(檔名目錄下直接刪掉檔案)
git checkout -- b.txt
(恢復刪除的檔案)
增加SSH Key(參考連結)
$ssh-keygen -t rsa -C "[email protected]"
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/you/.ssh/id_rsa): [Press enter]
Enter passphrase (empty for no passphrase): [Type a passphrase]
Enter same passphrase again: [Type passphrase again]
執行如下命令將公鑰內容貼上到貼上板中:
clip < ~/.ssh/id_rsa.pub
完成上面步驟以後登入GitHub,依次進入Your Profile–>Edit Profile->SSH and GPG keys
輸入任意的名稱,貼上剛剛複製的祕鑰,最後add ssh key
,完成。
之後建立遠端Git倉庫,步驟:點選create a new reposiry
輸入名稱即可。
本地更新後提交到遠端倉庫的指令:git push origin master
檢視分支:git branch
建立分支:git branch name
切換分支:git checkout name
建立+切換分支:git checkout –b name
合併某分支到當前分支:git merge name
刪除分支:git branch –d name