1. 程式人生 > >一些git指令

一些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