導航:首頁 > 程序命令 > git提交命令

git提交命令

發布時間:2022-12-15 09:30:05

『壹』 git hub提交

git push -u origin master

To https://github.com/scottlove0519/Test.git

! [rejected]        master -> master (fetch first)

error: failed to push some refs to 'https://github.com/scottlove0519/Test.git'

hint: Updates were rejected because the remote contains work that you do

hint: not have locally. This is usually caused by another repository pushing

hint: to the same ref. You may want to first integrate the remote changes

hint: (e.g., 'git pull ...') before pushing again.

hint: See the 'Note about fast-forwards' in 'git push --help' for details.

$ git config --global user.email [email protected]

如碼雲:

$git config --global user.name 'qiuzhongwei0519'

$  git config --global user.email [email protected]

1.git init 

添加到棧緩區

2.git add .

提交到棧緩區

3.git commit -u

關聯遠程和本地

4.git remote add origin https://github.com/scottlove0519/GuoKongYiTiHua-0.5.git

提交到遠程

5.  git push -u origin master -f

修改之前提交的注釋

git commit --amend

vim修改後保存退出

git rebase --continue

git push -u origin master -f

1、首先我得重新在git設置一下身份的名字和郵箱(因為當初都忘了設置啥了,因為遇到坑了)進入到需要提交的文件夾底下(因為直接打開git Bash,在沒有路徑的情況下,根本沒! 法! 改! 剛使用git時遇到的坑。。。 )

git config --global user.name "yourname"

git config --global user.email「[email protected]"

註:yourname是你要設置的名字,your@email是你要設置的郵箱。

2、刪除.ssh文件夾(直接搜索該文件夾)下的known_hosts(手動刪除即可,不需要git)

3、git輸入命令

$ ssh-keygen -t rsa -C "[email protected]"(請填你設置的郵箱地址)

接著出現:

Generating public/private rsa key pair.

Enter file in which to save the key (/Users/your_user_directory/.ssh/id_rsa):

請直接按下回車

然後系統會自動在.ssh文件夾下生成兩個文件,id_rsa和id_rsa.pub,用記事本打開id_rsa.pub

將全部的內容復制

4、打開https://github.com/,登陸你的賬戶,進入設置

進入ssh設置

點擊add ssh key,

ok!

5、在git中輸入命令:

ssh -T [email protected]

然後會跳出一堆話。。

輸入命令:yes

回車

然後就會提示你成功了~~

『貳』 git常用命令是什麼

1、在當前目錄新建一個Git代碼庫,:$ git init

2、新建一個目錄,將其初始化為Git代碼庫,:$ git init [project-name]

3、下載一個項目和它的整個代碼歷史,:$ git clone [url]

4、顯示當前的Git配置,:$ git config --list

5、編輯Git配置文件,:$ git config -e [--global]

6、設置提交代碼時的用戶信息,:$ git config [--global] user.name "[name]",:$ git config [--global] user.email "[email address]"

7、添加指定文件到暫存區,:$ git add [file1] [file2] ...

8、添加指定目錄到暫存區,包括子目錄,:$ git add [dir]

9、添加當前目錄的所有文件到暫存區,:$ git add .

10、對於同一個文件的多處變化,可以實現分次提交,:$ git add -p

11、刪除工作區文件,並且將這次刪除放入暫存區,:$ git rm [file1] [file2] ...

12、停止追蹤指定文件,但該文件會保留在工作區,:$ git rm --cached [file]

13、改名文件,並且將這個改名放入暫存區,:$ git mv [file-original] [file-renamed]

14、提交暫存區到倉庫區,:$ git commit -m [message]

15、提交暫存區的指定文件到倉庫區,:$ git commit [file1] [file2] ... -m [message]

16、提交工作區自上次commit之後的變化,直接到倉庫區,:$ git commit -a

17、提交時顯示所有diff信息,:$ git commit -v

18、使用一次新的commit,替代上一次提交

19、 如果代碼沒有任何新變化,則用來改寫上一次commit的提交信息,:$ git commit --amend -m [message]

20、重做上一次commit,並包括指定文件的新變化,:$ git commit --amend [file1] [file2]

(2)git提交命令擴展閱讀:

git有以下功能:

1、從伺服器上克隆完整的Git倉庫(包括代碼和版本信息)到單機上。

2、在自己的機器上根據不同的開發目的,創建分支,修改代碼。

3、在單機上自己創建的分支上提交代碼。

4、在單機上合並分支。

5、把伺服器上最新版的代碼fetch下來,然後跟自己的主分支合並。

6、生成補丁(patch),把補丁發送給主開發者。

7、看主開發者的反饋,如果主開發者發現兩個一般開發者之間有沖突(他們之間可以合作解決的沖突),就會要求他們先解決沖突,然後再由其中一個人提交。如果主開發者可以自己解決,或者沒有沖突,就通過。

8、一般開發者之間解決沖突的方法,開發者之間可以使用pull 命令解決沖突,解決完沖突之後再向主開發者提交補丁。

『叄』 Git常用命令

1.1 配置環境

當安裝Git後首先要做的事情是設置用戶名稱和email地址。這是非常重要的,因為每次Git提交都會使用該用戶信息。該用戶信息和GitHub上注冊的遠程倉庫的相關信息沒有任何關系。

git config --global user.name "你的名字"

git config --global user.email "你的郵箱"

git config --list

配置信息保存在用戶目錄下的.giitconfig文件中

1.2 獲取Git倉庫

要使用Git對我們的代碼進行版本控制,首先需要獲得Git倉庫

獲取Git倉庫通常有兩種方式:

執行步驟如下:

1、在電腦的任意位置創建一個空目錄作為我們的本地Git倉庫

2、進入這個目錄中,點擊右鍵打開Git bash 窗口

3、執行命令git init

可以通過Git提供的命令從遠程倉庫進行克隆,將遠程倉庫克隆到本地的命令形式為:

git clone 遠程Git倉庫地址

1.3 工作目錄、暫存區以及版本庫概念

版本庫:.git隱藏文件就是版本庫,版本庫存儲了很多配置信息、日誌信息和文件版本信息等

工作目錄(工作區):包含.git文件夾的目錄就是工作目錄,主要用於存放開發的代碼

暫存區:.git文件夾中有很多文件,其中一個index文件就是暫存區,也可以叫做stage。暫存區是一個臨時保存修改文件的地方

1.4 Git工作目錄下文件的兩種狀態

Git工作目錄下的文件存在兩種狀態:

Unmodified 未修改狀態

Modified 已修改狀態

Staged 已暫存狀態

這些文件的狀態會隨著我們執行Git的命令發生變化

1.5 本地倉庫操作

git status 查看文件狀態

也可以使用git status -s使輸出信息更簡潔

git add 將未跟蹤的文件加入暫存區,將已經修改的文件加入暫存區也是通過這個命令

git reset 將暫存區文件取消暫存

git commit -m 「你的說明」 將暫存區文件提交到本地倉庫

git rm 刪除文件 說明:這種操作是直接將文件加入到暫存區裡面,直接提交到本地倉庫生效,而直接刪除的話沒有進入到暫存區,需要先把文件加入到暫存區之後,再提交到本地倉庫。

將文件添加至忽略列表

一般我們總會有些文件無需納入Git的管理,也不希望他們總出現在未跟蹤文件列表。通常這些都是自動生成的文件,比如日誌文件,或者編譯過程中創建的臨時文件等。在這種情況下,我們可以在工作目錄中創建一個名為.gitnore的文件(文件名稱固定),列出忽略的文件模式。下面是一個示例:#代表注釋

由於windows無法創建不含文件名的文件,因此我們需要在bash窗口中用如下命令創建。

git log 查看日記記錄

1.6 遠程倉庫操作

如果想查看已經配置的遠程倉庫伺服器,可以運行git remote 命令。它會列出指定的每一個遠程伺服器的簡寫。如果已經克隆了遠程倉庫,那麼至少可以看見origin,這是Git克隆的倉庫伺服器的默認名字

git remote -v 可以查看對遠程倉庫詳細一點的說明

git remote show origin 可以查看對origin更詳細的遠程倉庫的說明

運行git remote add 添加一個遠程Git倉庫,同時指定一個可以引用的簡寫

如果你想獲得一份已經存在了的Git倉庫的拷貝,這時需要用到 git clone 命令。Git克隆的是Git倉庫伺服器上的幾乎所有數據(包括日誌信息、 歷史 記錄等),而不僅僅是復制工作所需要的文件。當你執行git clone 命令的時候,默認配置下Git倉庫中的每一個文件的每一個版本都將被拉取下來。

如果因為一些原因想要移除一個遠程倉庫,可以使用git remote rm

注意:此命令只是從本地移除遠程倉庫的記錄,並不會影響到遠程倉庫

git fetch 是從遠程倉庫獲取最新版本到本地倉庫,不會自動merge

說明:如果使用fetch命令,拉取的文件會放到版本庫裡面,不會自動整合到工作區,如果需要整合到工作區,需要使用 git merge 遠程倉庫別名/遠程倉庫分支

git pull 是從遠程倉庫獲取最新版本並merge到本地倉庫

注意:如果本地倉庫不是從遠程倉庫克隆,而是本地創建的倉庫,並且倉庫中存在文件,此時再從遠程倉庫中拉取文件的時候會報錯(fatal:refusing to merge unrelated histories),解決此我呢提可以在git pull 命令後加入參數 --allow-unrelated-histories

git push

1.7 Git分支

幾乎所有的版本控制系統都是以某種形式支持分支。使用分支意味著你可以把你的工作從開發主線上分離開來,以免影響開發主線。Git的master是一個特殊分支。它跟其它分支沒有區別。之所以每一個倉庫都有mater分支,是因為git init默認創建它,並且大多數人都懶得去改動它。

# 列出所有本地分支

$ git branch

#列出所有遠程分支

$ git branch -r

#列出所有本地分支和遠程分支

$git branch -a

git branch 分支名稱

git checkout 分支名稱

git push 遠程倉庫別名 遠程倉庫分支

git merge 分支名稱 說明:在當前分支下合並其他分支

注意:如果兩個分支存在同樣的文件名且同行的內容不一樣,那麼會產生矛盾,需要自己手動修改產生矛盾後的文件,然後添加到暫存區然後提交。

git branch -d 分支名稱

如果要刪除的分支中進行了一些開發動作,此時執行上面的刪除命令並不會刪除分支,可以將命令中的-d參數改為-D

如果要刪除遠程倉庫中的分支,可以使用命令git push origin -d branchName

1.8 Git標簽

像其他版本控制系統一樣,Git可以給 歷史 中的某一給提交打上標簽,以示重要。比較有代表性的是人們會使用這個功能來標記發布結點(v1.0、v1.2等)。標簽指的是某個分支某個特定時間點的狀態。通過標簽,可以很方便地切換到標記時的狀態。

#新建一個tag

$ git tag [tagName]

$ git tag

#新建一個分支,指向某個tag

$ git checkout -b [branch] [tag]

#刪除本地tag

$git tag -d[tag]

#刪除遠程tag

$git push origin :refs/tags/[tag]

『肆』 git修改提交信息

方式一:直接輸入命令: git commit --amend ,會進入對最後一次提交信息編輯的vim編輯器界面(普通模式下,按 i 進入編輯模式,編輯模式下按 esc 退出到普通模式,普通模式下按 : 進入命令模式,輸入 wq 即可保存修改並退出vim編輯器)。

方式二:如果提交信息簡單也可以直接通過如下命令行完成:
git commit --amend -m 'new commit message'

輸入命令: git rebase -i HEAD~2 ,進入commit的選擇界面,其中2代表最後2次提交,看你需要修改的提交位置對應修改即可,需要注意的是該值必須要小於提交總數,否則會報錯。

將需要改變的提交的pick改為edit,保存並退出(選中多個,則會將多個提交合並成一個),會看到如下提示

執行命令 git commit --amend 進入vim編輯器,修改對應提交信息,過程和修改最後一次提交一樣

修改成功後,執行 git log ,查看整個提價記錄是否是自己需要的

確認無誤後,執行 git rebase --continue ,會看到如下提示:

tip:
若是中途修改出錯,或是不想繼續修改,可以執行 git rebase --abort 終止

到此修改提交記錄過程就結束了。

如果需要修改的提交信息已經被提交到遠程倉庫,那麼在基於前面修改的基礎上,還需要強制推送本地倉庫到遠程分支,也就是執行如下命令:
git push <repo name> <branch nama> -f
進行強制推送

『伍』 Git基本操作

安裝完 Git 軟體後,需要我們做一下全局的配置工作,如:用戶名、郵箱等。

命令:git config

設置用戶名命令:

設置郵箱命令:

其中, --global 指定為全局配置,不指定該參數,則為當前所在倉庫配置。

查看配置:

在本地創建版本庫,需要使用 git init 命令。

首先,我們需要新建一個存放版本庫的文件夾,然後進入到該目錄所在路徑,執行如下命令,格式為:

最後查看文件夾,可以看到包含有 .git 子文件夾,說明創建版本庫成功了。

也可以在執行 git init 命令時指定一個文件夾作為版本庫。格式為:

克隆版本庫是指從現有 Git 版本庫中拷貝項目。

克隆版本庫使用如下命令,格式為:

如果我們需要克隆到指定的目錄,可以使用以下命令格式:

如:克隆遠程倉庫

添加一個或多個文件到暫存區:

添加指定目錄到暫存區,包括子目錄:

添加當前目錄下的所有文件到暫存區:

查看在我們上次提交之後是否有對文件進行再次修改。 格式為:

-s參數可以幫助我們獲得比較簡短的顯示結果。

如:我們在一個版本庫中所在目錄中增加一個 Unit1.pas 文件,然後執行如下命令:

顯示暫存區和工作區的差異:

顯示暫存區和上一次提交(commit)的差異:

顯示兩次提交之間的差異:

將暫存區內容添加到本地倉庫中。

提交暫存區到本地版本庫中:

message 可以用於描述提交的信息。

提交暫存區的指定文件到版本庫區:

修改後直接提交:

-a參數設置修改文件後不需要執行 git add 命令,直接來提交。

如:我們在上面的命令基礎上進行提交

接下來,我們對 Unit1.pas 文件進行修改,然後進行文件比較:

git reset 命令用於回退版本,可以指定退回某一次提交的版本。

git reset 命令語法格式如下:

可以使用 數字表示

git rm 命令用於刪除文件。

如果只是簡單地從工作目錄中手工刪除文件,運行 git status 時就會在 Changes not staged for commit 的提示。所以,在 git 環境下一定要使用 git 的刪除文件操作。

git rm 刪除文件有以下幾種形式:

將文件從暫存區和工作區中刪除:

如果刪除之前修改過並且已經放到暫存區域的話,則必須要用強制刪除選項 -f

如果想把文件從暫存區域移除,但仍然希望保留在當前工作目錄中,換句話說,僅是從跟蹤清單中刪除,使用 --cached 選項即可:

可以遞歸刪除,即如果後面跟的是一個目錄做為參數,則會遞歸刪除整個目錄中的所有子目錄和文件:

git mv 命令用於移動或重命名一個文件、目錄或軟連接。

如果新文件名已經存在,但還是要重命名它,可以使用 -f 參數:



『陸』 git(五 合並提交命令)

場景 :本地做了四次提交,想把第 2、3、4 次提交合並,只保留第二次提交的commit message

解決方案
1、git reflog 查看所有的提交記錄

p.s. git reflog 可以查看所有分支的所有操作記錄(包括已經被刪除的 commit 記錄和 reset 的操作);git log 命令可以顯示所有提交過的版本信息,看不到刪除的記錄。所以買後悔葯回退刪除記錄的時候,可以用 git reflog

上面的圖片展示了,一共四次提交,按照時間倒序排列分別是 第 4、3、2、1次提交
2、git rebase -i 「最新的一個想保留的 Commit」
意思是,我想合並2、3、4,那麼最新一個想保留的 commit 就是 第一次 commit,他的hash值為 ae9c811,輸入下列命令並回車

或者

3、選擇要合並的 commit :上述步驟完成後會跳出下圖界面
注意這個時候的順序:最近一次提交在最下面

前面三行是我們需要操作的三個 Commit,每行最前面的是對該 Commit 操作的 Command。關於每個 Command 具體做什麼,下面的注釋寫得非常清楚。為了完成我們的需求,我們可以關注到這兩個命令:

我們可以選擇把第 3、4 次的commit message合並到第二次上面,修改command如下,並保存退出:

4、編輯合並 commit 的 commit message
上述步驟完成後,會跳出如下界面

5、檢查:使用git log檢查

結果如下:

注意,使用git reflog仍可以查看最初的命令:

兩者的區別在於,git log只顯示保留的,git reflog可以顯示 reset 和 rebase、刪除的版本

編譯器的可視化git工具中的展示:

這個時候再push,提交記錄上就非常好看了
請注意

『柒』 git如何提交本地代碼

首先要先注冊一個自己的GitHub賬號
有了自己的賬號以後,就可以進行登錄,開始創建一個新的項目
創建一個新的項目,填寫項目名稱,描述
新建倉庫下,沒有代碼時,會提示3種方式可以操作代碼同步到git.
我使用第一種命令操作方式:
另外需要先下載Git,這里最好下載最新版本的Git,安裝時如果沒有特殊需求,一直下一步就可以了,安裝完成之後,雙擊打開Git Bash
第一步:cd進入你放項目文件的地址 ,我是放在了這里: E:\regtest

第二步:輸入git init
第三步:輸入git add . 這個是將項目上所有的文件添加到倉庫中的意思,如果想添加某個特定的文件,只需把.換成這個特定的文件名即可。
我是使用了".",把整個文件夾下信息都提交了。
第四步輸入git commit -m "first commit",表示你對這次提交的注釋,雙引號裡面的內容可以根據個人的需要改。
這里如果出現以下內容,則需要你輸入自己的賬號或名字
用上面提示的代碼輸入自己的郵箱或名字
再輸入git commit -m "first commit"時就會成功
第五步輸入git remote add origin https://自己的倉庫url地址(這個url可以到自己的git中創建的倉庫頁面找就是最上面一個輸入欄中的url) 將本地的倉庫關聯到github上,
最後一步,輸入git push -u origin master,這是把代碼上傳到github倉庫的意思。
執行完後,如果沒有異常,會等待幾秒,然後跳出一個讓你輸入Username和Password 的窗口,你只要輸人github的登錄賬號和密碼就行了。

『捌』 git 命令-提交指定文件

添加指定文件
git add dir/file
忽略其他文件
git stash -u -k
提交
git commit -m 'log message'
恢復其他文件的修改狀態
git stash pop

『玖』 git 命令行修改提交地址

最近公司gitlab 的地址更換了,自己本地的git提交地址如何修改呢?

檢出倉庫: git clone git://github.com/jquery/jquery.git /users/desktop/XXX.github.io(可以加上本地路徑 指定路徑)

查看遠程倉庫: git remote -v

添加遠程倉庫: git remote add [name] [url]

刪除遠程倉庫: git remote rm [name]

修改遠程倉庫: git remote set-url [name] [newUrl]

拉取遠程倉庫: git pull [remoteName] [localBranchName]

推送遠程倉庫: git push (這時候會讓你填寫用戶名,只填寫用戶名就好了,然後讓你填寫密碼,回車之後修改就提交了)。

查看本地分支: git branch

查看遠程分支: git branch -r

創建本地分支: git branch [name] ----注意新分支創建後不會自動切換為當前分支

切換分支: git checkout [name]

創建新分支並立即切換到新分支: git checkout -b [name]

刪除分支: git branch -d [name] ---- -d選項只能刪除已經參與了合並的分支,對於未有合並的分支是無法刪除的。如果想強制刪除一個分支,可以使用-D選項

合並分支: git merge [name] ----將名稱為[name]的分支與當前分支合並

創建遠程分支(本地分支push到遠程): git push origin [name]

刪除遠程分支: git push origin :heads/[name] 或 $ gitpush origin :[name]

閱讀全文

與git提交命令相關的資料

熱點內容
openldaplinux安裝 瀏覽:23
java取月的最後一天 瀏覽:10
騰訊雲伺服器多久退款 瀏覽:949
微信廣告植入系統源碼 瀏覽:922
一年級語文上冊pdf 瀏覽:315
好久不見app干什麼用的 瀏覽:143
壓縮包解壓碼對方可以更改嗎 瀏覽:256
pdf電子書製作軟體 瀏覽:888
數控三通編程 瀏覽:300
linux多終端 瀏覽:811
法律寫作pdf 瀏覽:144
國貨哪個品牌最好app 瀏覽:951
看哪個app給錢最多 瀏覽:178
編程靠經驗嗎 瀏覽:759
c教程pdf下載地址 瀏覽:573
製作視頻哪個app有瘦臉功能 瀏覽:649
linux查看線程內存 瀏覽:509
命令行簽名apk 瀏覽:92
網頁照片旋轉源碼 瀏覽:842
QQ會員頭像源碼 瀏覽:263