1. 程式人生 > >Git/GitHub技巧

Git/GitHub技巧

一、基礎相關

1.建立版本庫

caibindeMacBook-Pro:testgit caibin$ git init
Initialized empty Git repository in /Users/caibin/testgit/.git/

我們可以看到在testgit檔案下多了一個.git檔案

2.工作區和暫存區

⑴我們在電腦裡能看到的就是工作區,就像我上面的testgit

⑵工作區裡面有個.git檔案,這個是.git的版本庫,版本庫裡還有一個很重要的部分就是stage(暫存區)

我們往Git版本庫新增檔案的時候,分為兩步:

①git add            把檔案新增到暫存區

②git commit       把暫存區的所有內容提交到當前分支(我們建立Git版本庫時,Git自動為我們建立了master分支)

caibindeMacBook-Pro:gitlearn caibin$ git add test.txt
caibindeMacBook-Pro:gitlearn caibin$ git commit -m "do1"
[master (root-commit) a4e67f7] do1
 1 file changed, 1 insertion(+)
 create mode 100644 test.txt

3.檢視工作區和版本庫的區別

git diff 目標檔案   :可以檢視工作區和最新提交的不同

caibindeMacBook-Pro:gitlearn caibin$ git diff HEAD -- test.txt
diff --git a/test.txt b/test.txt
index 5bdcfc1..df7af2c 100644
--- a/test.txt
+++ b/test.txt
@@ -1 +1 @@
-version1
+version2

4.版本回退(危險係數高)

⑴我們修改為version2後commit,用git log檢視一下我們git的日誌

caibindeMacBook-Pro:gitlearn caibin$ git log
commit 500950ffb69564b9f7b4e752c3b1884b975d0fc4 (HEAD -> master)
Author: bincai <[email protected]>
Date:   Sat Jun 30 17:09:58 2018 +0800

    do2

commit a4e67f7d6ce171672bd9ad2a4cd615736e7780d7
Author: bincai <
[email protected]
> Date: Sat Jun 30 17:06:43 2018 +0800 do1

⑵回退

git reset --hard 版本號

caibindeMacBook-Pro:gitlearn caibin$ cat test.txt
version2
caibindeMacBook-Pro:gitlearn caibin$ git reset --hard a4e6
HEAD is now at a4e67f7 do1
caibindeMacBook-Pro:gitlearn caibin$ git log
commit a4e67f7d6ce171672bd9ad2a4cd615736e7780d7 (HEAD -> master)
Author: bincai <[email protected]>
Date:   Sat Jun 30 17:06:43 2018 +0800

    do1
caibindeMacBook-Pro:gitlearn caibin$ cat test.txt
version1

⑶如果後悔了怎麼辦?

git reflog命令可以解決

caibindeMacBook-Pro:gitlearn caibin$ git reflog                         //找到以前的提交id
a4e67f7 (HEAD -> master) [email protected]{0}: reset: moving to a4e6
500950f [email protected]{1}: commit: do2
a4e67f7 (HEAD -> master) [email protected]{2}: commit (initial): do1
caibindeMacBook-Pro:gitlearn caibin$ git reset --hard 5009              //回退
HEAD is now at 500950f do2          
caibindeMacBook-Pro:gitlearn caibin$ git log
commit 500950ffb69564b9f7b4e752c3b1884b975d0fc4 (HEAD -> master)
Author: bincai <[email protected]>
Date:   Sat Jun 30 17:09:58 2018 +0800

    do2

commit a4e67f7d6ce171672bd9ad2a4cd615736e7780d7
Author: bincai <[email protected]>
Date:   Sat Jun 30 17:06:43 2018 +0800

    do1
caibindeMacBook-Pro:gitlearn caibin$ cat test.txt
version2

5.撤銷提交

git revert,和reset相比,它是生成新的提交來撤銷。

⑴修改text並提交

我們先看一下分支上檔案的內容

caibindeMBP:gitlearn caibin$ cat test.txt
beforerevert

修改text並提交

caibindeMBP:gitlearn caibin$ vim test.txt
caibindeMBP:gitlearn caibin$ git add test.txt
caibindeMBP:gitlearn caibin$ git commit -m "tijiao"
[dev 4a663a6] tijiao
 1 file changed, 1 insertion(+), 1 deletion(-)

⑵回滾

caibindeMBP:gitlearn caibin$ git log
commit 4a663a64c2452417dd401e398f87bbef53cdc80e (HEAD -> dev)
Author: bincai <[email protected]>
Date:   Sun Jul 1 16:06:25 2018 +0800

    tijiao

commit 41de8cf290a362152994cc2aad49a60fc511f748
Author: bincai <[email protected]>
Date:   Sun Jul 1 16:02:50 2018 +0800

    beforerevert

commit 6812afa280a7fdec205c817152eaf9e08837c461
Author: bincai <[email protected]>
Date:   Sun Jul 1 15:58:30 2018 +0800

    Revert "test"
    
    This reverts commit 30ba3d5a15427120804d730a94021088aa4ce6f6.

commit 30ba3d5a15427120804d730a94021088aa4ce6f6
Author: bincai <[email protected]>
Date:   Sun Jul 1 15:56:36 2018 +0800
caibindeMBP:gitlearn caibin$ git revert 4a66
[dev a531644] Revert "tijiao"
 1 file changed, 1 insertion(+), 1 deletion(-)
caibindeMBP:gitlearn caibin$ git log
commit a5316449137ae8f825bbb8b99277506c4ce1cd01 (HEAD -> dev)
Author: bincai <[email protected]>
Date:   Sun Jul 1 16:08:50 2018 +0800

    Revert "tijiao"
    
    This reverts commit 4a663a64c2452417dd401e398f87bbef53cdc80e.

commit 4a663a64c2452417dd401e398f87bbef53cdc80e
Author: bincai <[email protected]>
Date:   Sun Jul 1 16:06:25 2018 +0800

    tijiao

commit 41de8cf290a362152994cc2aad49a60fc511f748
Author: bincai <[email protected]>
Date:   Sun Jul 1 16:02:50 2018 +0800

    beforerevert

commit 6812afa280a7fdec205c817152eaf9e08837c461
Author: bincai <[email protected]>
Date:   Sun Jul 1 15:58:30 2018 +0800
caibindeMBP:gitlearn caibin$ cat test.txt
beforerevert

6.撤銷修改

git checkout -- file       可以撤銷修改,即讓這個檔案回到最近一次git commit 或 git add的狀態

⑴還未提交到暫存區

我們先把檔案內容改成version3,然後從版本庫checkout 

caibindeMacBook-Pro:gitlearn caibin$ git checkout -- test.txt
caibindeMacBook-Pro:gitlearn caibin$ cat test.txt
version2

⑵已經提交到暫存區了

如果我們先把檔案改成version3,然後add到暫存區裡面

然後改成把檔案改成version4,再checkout

caibindeMacBook-Pro:gitlearn caibin$ git checkout -- test.txt
caibindeMacBook-Pro:gitlearn caibin$ cat test.txt
version3

可見,它把暫存區的給搞下來了

7.刪除檔案

首先我們建立一個testrm.txt檔案並提交上去。

caibindeMacBook-Pro:gitlearn caibin$ git rm testrm.txt     //在本地刪除
rm 'testrm.txt'
caibindeMacBook-Pro:gitlearn caibin$ git commit -m "rm"    //提交
[master d8223f5] rm
 1 file changed, 1 deletion(-)
 delete mode 100644 testrm.txt
caibindeMacBook-Pro:gitlearn caibin$ git log               //檢視日誌
commit d8223f51c26d67c6fd57ee5b2d64985a5667c019 (HEAD -> master)
Author: bincai <[email protected]>
Date:   Sat Jun 30 18:48:27 2018 +0800

    rm

commit ca84769896d991aa7ef6858b5676dd1c5afc75f1
Author: bincai <[email protected]>
Date:   Sat Jun 30 18:45:25 2018 +0800

    rmtest

commit 500950ffb69564b9f7b4e752c3b1884b975d0fc4
Author: bincai <[email protected]>
Date:   Sat Jun 30 17:09:58 2018 +0800

    do2

commit a4e67f7d6ce171672bd9ad2a4cd615736e7780d7
Author: bincai <[email protected]>
Date:   Sat Jun 30 17:06:43 2018 +0800

    do1

二、遠端庫相關

1.在gitHub上建立一個遠端倉庫並配置

caibindeMacBook-Pro:gitlearn caibin$ git remote add origin https://github.com/cGitHub123/gitlearn.git
2.向遠端倉庫推送
caibindeMacBook-Pro:gitlearn caibin$ git push -u origin master
Counting objects: 12, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (12/12), 843 bytes | 843.00 KiB/s, done.
Total 12 (delta 0), reused 0 (delta 0)
To https://github.com/cGitHub123/gitlearn.git
 * [new branch]      master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.

git push -u 裡面-u是吧origin指定為預設主機,以後不改就不用加了

3.從遠端庫克隆

git clone命令可以從遠端倉庫克隆

4.fetch 

更新遠端程式碼到本地庫

首先我們手動的將github master分支的test.txt內容改成wogai

⑴git fetch

caibindeMBP:gitlearn caibin$ git fetch
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 6 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (6/6), done.
From https://github.com/cGitHub123/gitlearn
   0304eda..9aa9039  master     -> origin/master
caibindeMBP:gitlearn caibin$ git rebase
First, rewinding head to replay your work on top of it...
Applying: go
Using index info to reconstruct a base tree...
M	test.txt
Falling back to patching base and 3-way merge...
Auto-merging test.txt
CONFLICT (content): Merge conflict in test.txt
error: Failed to merge in the changes.
Patch failed at 0001 go
The copy of the patch that failed is found in: .git/rebase-apply/patch

Resolve all conflicts manually, mark them as resolved with
"git add/rm <conflicted_files>", then run "git rebase --continue".
You can instead skip this commit: run "git rebase --skip".
To abort and get back to the state before "git rebase", run "git rebase --abort".

caibindeMBP:gitlearn caibin$ cat test.txt
<<<<<<< HEAD
wogai
=======
heidourebase
>>>>>>> go

5.pull

git pull :git fetch + git merge

git pull --rebase : git fetch +git rebase

三、分支管理

1.建立並切換分支

建立分支:git branch 分支名

切換分支:git checkout 分支名

或者直接建立並切換分支:

git checkout -b 分支名   

caibindeMacBook-Pro:gitlearn caibin$ git checkout -b dev
Switched to a new branch 'dev'

2.合併分支

我們把檔案修改一下再提交到dev分支

caibindeMacBook-Pro:gitlearn caibin$ cat test.txt  //在dev分支下檢視test檔案
version4
caibindeMacBook-Pro:gitlearn caibin$ git checkout master  //切換到master分支
Switched to branch 'master'
Your branch is up to date with 'origin/master'.
caibindeMacBook-Pro:gitlearn caibin$ cat test.txt         //檢視master下test檔案
version3
caibindeMacBook-Pro:gitlearn caibin$ git merge dev        //合併dev分支到master
Updating d8223f5..3eff4c4
Fast-forward
 test.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
caibindeMacBook-Pro:gitlearn caibin$ cat test.txt         //再次檢視master檔案
version4

3.刪除分支

git branch -d 分支名

git branch -D 分支名   這個是強行刪除

4.解決衝突

假設我們在master和dev分支同時修改並提交了test.txt檔案。那麼當我們合併時候就會報出:

caibindeMBP:gitlearn caibin$ git merge dev
Auto-merging test.txt
CONFLICT (content): Merge conflict in test.txt
Automatic merge failed; fix conflicts and then commit the result.

然後我們檢視test.txt檔案

caibindeMBP:gitlearn caibin$ cat test.txt
<<<<<<< HEAD
version4master
=======
version4dev
>>>>>>> dev

可以看到確實存在衝突,修改後再提交就行了

5.禁用fast-forward模式

如果我們採用fast-forward模式,當我們刪除dev分支後,會丟掉分支資訊,我們可以禁用fast-forward模式

首先我們把分支重置為:

caibindeMBP:gitlearn caibin$ git log --graph --pretty=oneline --abbrev-commit
* 3eff4c4 (HEAD -> master) bracnch
* d8223f5 (origin/master) rm
* ca84769 rmtest
* 500950f do2
* a4e67f7 do1

然後新建dev 

caibindeMBP:gitlearn caibin$ git checkout -b dev
Switched to a new branch 'dev'
caibindeMBP:gitlearn caibin$ vim test.txt
caibindeMBP:gitlearn caibin$ git add test.txt
caibindeMBP:gitlearn caibin$ git commit -m "dev"
[dev 52c7aa4] dev
 1 file changed, 1 insertion(+), 1 deletion(-)
caibindeMBP:gitlearn caibin$ git checkout master
Switched to branch 'master'
Your branch is ahead of 'origin/master' by 1 commit.
  (use "git push" to publish your local commits)
caibindeMBP:gitlearn caibin$ git merge dev  //這裡開啟了fast-forward模式
Updating 3eff4c4..52c7aa4
Fast-forward
 test.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
caibindeMBP:gitlearn caibin$ git branch -d dev
Deleted branch dev (was 52c7aa4).
caibindeMBP:gitlearn caibin$ git log --graph --pretty=oneline --abbrev-commit
* 52c7aa4 (HEAD -> master) dev
* 3eff4c4 bracnch
* d8223f5 (origin/master) rm
* ca84769 rmtest
* 500950f do2
* a4e67f7 do1

新建dev1

caibindeMBP:gitlearn caibin$ git checkout -b dev1
Switched to a new branch 'dev1'
caibindeMBP:gitlearn caibin$ vi test.txt
caibindeMBP:gitlearn caibin$ git add test.txt
caibindeMBP:gitlearn caibin$ git commit -m "dev1"
[dev1 ea06110] dev1
 1 file changed, 1 insertion(+), 1 deletion(-)
caibindeMBP:gitlearn caibin$ git checkout master
Switched to branch 'master'
Your branch is ahead of 'origin/master' by 2 commits.
  (use "git push" to publish your local commits)
caibindeMBP:gitlearn caibin$ git merge --no-ff -m "merge" dev1  //關閉fast-forward模式
Merge made by the 'recursive' strategy.
 test.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
caibindeMBP:gitlearn caibin$ git log --graph --pretty=oneline --abbrev-commit
*   0e1bd50 (HEAD -> master) merge
|\  
| * ea06110 (dev1) dev1
|/  
* 52c7aa4 dev
* 3eff4c4 bracnch
* d8223f5 (origin/master) rm
* ca84769 rmtest
* 500950f do2
* a4e67f7 do1
caibindeMBP:gitlearn caibin$ git branch -d dev1
Deleted branch dev1 (was ea06110).
caibindeMBP:gitlearn caibin$ git log --graph --pretty=oneline --abbrev-commit
*   0e1bd50 (HEAD -> master) merge
|\  
| * ea06110 dev1
|/  
* 52c7aa4 dev
* 3eff4c4 bracnch
* d8223f5 (origin/master) rm
* ca84769 rmtest
* 500950f do2
* a4e67f7 do1

6.bug分支

如果我們在dev分支開發過程中需要臨時修改master分支的bug,我們可以將dev分支先stash,然後取master分支切新分支改bug,之後再切回dev分支從stash恢復。

先暫存

caibindeMBP:gitlearn caibin$ git branch 
* dev
  master
caibindeMBP:gitlearn caibin$ cat test.txt
version4stash
caibindeMBP:gitlearn caibin$ git stash           //先暫存
Saved working directory and index state WIP on dev: 0e1bd50 merge

改完master分支,再切回來

caibindeMBP:gitlearn caibin$ git checkout dev
Switched to branch 'dev'
caibindeMBP:gitlearn caibin$ cat test.txt
version4dev1
caibindeMBP:gitlearn caibin$ git stash list               //重點
[email protected]{0}: WIP on dev: 0e1bd50 merge
caibindeMBP:gitlearn caibin$ git stash pop [email protected]{0}      //重點
On branch dev
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

	modified:   test.txt

Untracked files:
  (use "git add <file>..." to include in what will be committed)

	.test.txt.swp

no changes added to commit (use "git add" and/or "git commit -a")
Dropped [email protected]{0} (3494cc28270cf2672673b88838bb8bb75ef4a8ac)
caibindeMBP:gitlearn caibin$ cat test.txt
version4stash

這裡我們有兩種方式來找回

⑴git stash apply 後面可以跟上編號,如上面的[email protected]{0}

   git stash drop  刪除stashlist

⑵git stash pop   找回並刪除

7.多人協作

⑴首先用    git push origin 本地分支   來推送 

⑵如果有衝突,git pull 拉取解決衝突,解決後重新提交。

8.rebase

rebase也是合併分支,它和merge的區別可以用圖來展示

我們先建立一個testrebase分支

caibindeMBP:gitlearn caibin$ git branch testrebase

切到testrebase分支,並修改text.txt內容為heidourebase,然後我們切到主分支,但是這裡會報錯:

caibindeMBP:gitlearn caibin$ git checkout master
error: Your local changes to the following files would be overwritten by checkout:
	test.txt
Please commit your changes or stash them before you switch branches.
Aborting

⑴暫存

caibindeMBP:gitlearn caibin$ git stash

切回去後,再

caibindeMBP:gitlearn caibin$ cat test.txt
versionrebase
caibindeMBP:gitlearn caibin$ git rebase testrebase
Current branch master is up to date.
caibindeMBP:gitlearn caibin$ cat test.txt
versionrebase

檢視gitlog沒有任何操作

⑵提交

先在master修改test.txt並且提交

caibindeMBP:gitlearn caibin$ vim test.txt
caibindeMBP:gitlearn caibin$ cat test.txt
masterrebase
caibindeMBP:gitlearn caibin$ git add test.txt
caibindeMBP:gitlearn caibin$ git commit test.txt
Aborting commit due to empty commit message.
caibindeMBP:gitlearn caibin$ git commit -m "master"
[detached HEAD ca4ba78] master
 2 files changed, 1 insertion(+), 1 deletion(-)
 create mode 100644 test.txg
caibindeMBP:gitlearn caibin$ cat test.txt
masterrebase

切回testrebase分支並改為testrebase並提交

caibindeMBP:gitlearn caibin$ vim test.txt
caibindeMBP:gitlearn caibin$ git add test.txt
caibindeMBP:gitlearn caibin$ git commit -m "test"
[testrebase 0030c93] test
 1 file changed, 1 insertion(+), 1 deletion(-)
caibindeMBP:gitlearn caibin$ cat test.txt
testrebase

然後切回master分支,git rebase,這時候可能會有衝突了:

caibindeMBP:gitlearn caibin$ git add test.txt
caibindeMBP:gitlearn caibin$ git status
rebase in progress; onto 0030c93
You are currently rebasing branch 'master' on '0030c93'.
  (all conflicts fixed: run "git rebase --continue")

Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

	modified:   test.txt

Untracked files:
  (use "git add <file>..." to include in what will be committed)

	.test.txt.swp
	testrebase

caibindeMBP:gitlearn caibin$ git rebase --continue
Applying: masterrebase
caibindeMBP:gitlearn caibin$ cat test.txt
<<<<<<< HEAD
<<<<<<< HEAD
testrebase
=======
heidourebase
>>>>>>> tijiaole
=======
masterrebase
>>>>>>> masterrebase

我們檢視分支情況:

* f83b454 (HEAD -> master) masterrebase
* f5a9b6a tijiaole
* 84f461e 123
* 0030c93 (testrebase) test
* 8b6ebda test
* 943be60 go
*   0e1bd50 merge
|\  
| * ea06110 dev1
|/  
* 52c7aa4 dev

相比於merge , rebase 把分支線合成一條了~


相關推薦

Git/GitHub技巧

一、基礎相關1.建立版本庫caibindeMacBook-Pro:testgit caibin$ git init Initialized empty Git repository in /Users/caibin/testgit/.git/我們可以看到在testgit檔案下

[git] github 推送以及沖突的解決

代碼 update 指向 origin 所有 test 新版本 .com 服務 推送以及沖突的解決:   1、查看分支狀態(查看所有:當前檢出分支的前面會有星號) git branch   2、切換分支 git checkout test(分支名)#創建並切換分支gi

Django擴展——git&github

擴展 django git&github Git-- 分布式版本控制系統-- 安裝sudo apt-get install git-- 運行git1.遠程倉庫1.1 創建github賬號# 本地Git倉庫和GitHub倉庫之間的傳輸是通過SSH加密的;1.1.1 創建項目的SSH Keyssh-k

git 使用技巧

branch init 所有 clean not study blog dev detail 常見命令 git init 將當前文件夾作為一個git 倉庫來使用 git add git add --all git add -A git commit git commit

git github配置

epo 都在 sta https 主機 ins get 一個 tor 1, 先建立一個本地git庫,保證所有的git項目都在這個目錄下維護. mkdir git->cd git->git init,初始化git倉庫,只有在/git下面(域)才能使用git命令 2

git報錯failed to push some refs to 'git@github.com:Markprint/github.git'

需要 tar etc refs img nbsp alt 碼雲 style 這個不知名小錯誤用了我兩天的空余時間mmp 就是這裏報的錯 輸入 git push origin master -f 解釋為:   遠程分支上存在本地分支中不存

Git----GitHub上傳本地文件到git

one 版本 用戶名 技術分享 文件中 .cn 推薦 info html 1、首先在git上創建一個庫,用來保存上傳的本地文件 2、通過命令 git init 把這個目錄變成git可以管理的倉庫 git init 3、將遠程git庫克隆一份保存到本地 g

git/github 代碼托管圖文教程

its 註意 為我 直接 tor CA unset IT 成了 現在都流行將代碼托管到github,使用版本控制工具git,現在讓我們開始一步一步的將我們本地的代碼托管到github上去吧 一、 git的使用 1、下載git工具 2、下載好後安裝時候註意要使用vi

Git+Github協作開發流程

申請 屬性 克隆 協作 bsp 新的 操作 upload 內容 采用合作開發者的方式進行協作開發,下面以zlcook和zlserver合作開發iqas-ios-record項目為例進行講解,zlcook為項目創建者,zlserver為項目參與者。協作開發步驟如下:

Git/Github GitBash 001 init

ash -a hub nbsp des dir 8.0 ini 4.0 $ mkdir b$ cd b$ ls -alhtotal 4.0Kdrwxr-xr-x 1 desktop 197121 0 八月 8 15:32 ./drwxr-xr-x 1 desktop 19

Git/Github GitBash 2.2 .git.objects

pan ren bject 定位 每次 增加 inf not div $ mkdir c $ cd c $ git init //首次提交。 $ vim 1.txt $ ls -alh .git/objects/ total 4.0K drwxr-xr-x 1 d

Git/Github.001.與服務器交互數據

github bsp 再次 rep pos git style one epo   比如https://github.com/:   首次下載可以clone: $ git clone https://github.com/yourname/yourrepository

git-github-TortoiseGit綜合使用教程(二)快速入門

克隆 程序 總結 https .com 推送 tag b- 標簽 一:建立版本庫 在github網站上創建一個版本庫,並復制clone地址。 [email protected]:jackadam1981/Flask_Base.git https://github.com/j

Git+Github入門

我們 文件 顯示 eset inf 一次 命令歷史 commit 結果 1.安裝Git 2.安裝完成後需進一步設置,在命令行輸入 3.選擇一個合適的地方創建一個空目錄 pwd命令用於顯示當前目錄 4.通過git init命令把這個目錄變成Git可以管理的倉庫

放棄本地修改,強制更新(git,github)

###背景 本地有修改,但是不想提交,想放棄修改,直接拉取github的最新程式碼。 ###操作 git fetch --all #下載遠端庫的最新內容 git reset --hard origin/master #把head指標指向剛剛下載的最新程式碼,

Git/GitHub基本操作

 Git Git是分散式版本控制工具,SVN是集中式版本控制,有單點故障的問題 GitHub是Git的程式碼託管中心,類似的國內有碼雲,是遠端維護庫 Git的優勢 大部分操作在本地完成,不需要聯網 完整性有保證 儘可能新增資料而不是刪除或修改資料 分支操作非常流暢 與linux命

Git: Github提示Key is already use

背景:在Github中為使用者新增SSH Key的時候報Key is already use,根據錯誤提示很顯然,所新增的SSH Key已經被其他賬號使用後,才會出現這個錯誤。現在有兩種解決辦法,第一,找到帳號刪除Key;第二,重新生成Key 找到使用該Key的帳號,在Github個人資訊中有SS

GitHub】 初學Git,Github在Ubuntu下的配置

1.參考連結:https://blog.csdn.net/tina_ttl/article/details/51326684 http://www.runoob.com/w3cnote/git-guide.html 開始使用github 1. 配置git git config --g

git@github.com: Permission denied (publickey).////remote: Permission to xxx/test.git denied to xxx.等權限問題

xxx 本地 rmi 解決 賬號 color 面板 remote 配置 Error msg [email protected]: Permission denied (publickey) 或者: remote: Permission to xxx/test.git deni

CentOS7+git+github建立Python開發環境

1.準備CentOS7 (1)下載VMware Workstation https://pan.baidu.com/s/1miFU8mk (2)下載CentOS7映象 https://mirrors.aliyun.com/centos/ (3)安裝Cent