日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

git常用使用命令个人总结

發布時間:2024/8/1 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 git常用使用命令个人总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

git pull 用于從遠程獲取代碼并合并本地的版本,其實就是 git fetch 和 git merge FETCH_HEAD 的簡寫

git stash 所有未提交的修改(工作區和暫存區)保存至堆棧中,用于后續恢復當前工作目錄

git stash list 查看當前stash中的內容

git stash pop 將當前stash中的內容彈出,并應用到當前分支對應的工作目錄上。該命令將堆棧中最近保存的內容刪除(棧是先進后出)

git branch -r 查看遠程所有分支
git branch -a 查看本地和遠程所有分支

git remote -v 列出存在的遠程倉庫

添加遠程倉庫到本機
git remote add pd git://githup.com/paulbooner/ticgit.git

origin git://github.com/schacont/ticgit.git
pd git://github.com/paulboone/ticgit.git ?可以用字符串pd指代對應倉庫地址;
可以抓取所有Paul有的,本地倉庫沒有的信息,可以運行
git fetch pd

remote: Counting objects: 58, done.
remote: Compressing objects: 100% (41/41), done.
remote: Total 44 (delta 24), reused 1 (delta 0)
Unpacking objects: 100% (44/44), done.
From git://github.com/paulboone/ticgit
* [new branch] master -> pb/master
* [new branch] ticgit -> pb/ticgit

顯示遠程信息
git remote show origin

git branch -vv?
查看本地分支和遠程分子的映射關系

建立分支的映射
將當前分支映射到遠程的指定分子,注意切換到當前分支
git branch -u origin/遠程分支

git cherry-pick <commitHash>

上面命令就會將指定的提交commitHash,應用于當前分支。這會在當前分支產生一個新的提交,當然它們的哈希值會不一樣。
舉例來說,代碼倉庫有master和feature兩個分支。

? ? a - b - c - d ? Master
? ? ? ? ?\
? ? ? ? ? ?e - f - g Feature
現在將提交f應用到master分支。

上面代碼表示將feature分支的最近一次提交,轉移到當前分支。

# 切換到 master 分支
$ git checkout master

# Cherry pick 操作
$ git cherry-pick f
上面的操作完成以后,代碼庫就變成了下面的樣子。

? ? a - b - c - d - f ? Master
? ? ? ? ?\
? ? ? ? ? ?e - f - g Feature
從上面可以看到,master分支的末尾增加了一個提交f。

git cherry-pick命令的參數,不一定是提交的哈希值,分支名也是可以的,表示轉移該分支的最新提交。

本地master分支推送到origin主機的master分支

git push origin master

想等同于 git push origin master:master

手動創建分支方法
創建一個分支
執行 git branch (branchname) 即可

$ git branch testing
$ git branch
* master
? testing

git checkout master 切換分支到master

也可以使用 git checkout -b (branchname) 命令來創建新分支
并立即切換到該分支下

刪除分支?
git branch -d (branchname)

git add 添加所有改動內容

git add -A . ?點一次添加所有改變的文件
git add -A 添加所有內容

git add . ?點表示添加新文件和編輯過的文件,但不包括刪除的文件
git add -u ?表示添加編輯或者刪除的文件,不包括新添加的文件

沖突的解決辦法
在git中,可以使用 git add 告訴git 文件沖突已經解決

沖突方法的總結

git checkout master
Switched to branch 'master'
現在這些改變已經記錄到我的 "master" 分支了。接下來我們將 "change_site" 分支合并過來。

git merge change_site

當前的分支是master,將 change_site 分支合并過來

Auto-merging runoob.php
CONFLICT (content): Merge conflict in runoob.php
Automatic merge failed; fix conflicts and then commit the result.

$ cat runoob.php ? ? # 打開文件,看到沖突內容
<?php
<<<<<<< HEAD ? ?當前的分支名
echo 1;
=======
echo 'runoob';
>>>>>>> change_site ? ?合并過來的分支名
?>

我們將前一個分支合并到 master 分支,一個合并沖突就出現了,接下來我們需要手動去修改它。

vim runoob.php?
$ cat runoob.php
<?php
echo 1;
echo 'runoob';
?>
$ git diff
diff --cc runoob.php
index ac60739,b63d7d7..0000000
--- a/runoob.php
+++ b/runoob.php
@@@ -1,3 -1,3 +1,4 @@@
? <?php
?+echo 1;
+ echo 'runoob';
? ?>
??
在 Git 中,我們可以用 git add 要告訴 Git 文件沖突已經解決

$ git status -s
UU runoob.php
$ git add runoob.php
$ git status -s
M ?runoob.php
$ git commit
[master 88afe0e] Merge branch 'change_site'
現在我們成功解決了合并中的沖突,并提交了結果。

git clean -n ?
查看將要被刪除的文件,并不實際刪除文件

刪除當前工作目錄下的未跟蹤文件,但不刪除文件夾運行
git clean -f?

刪除當前工作目錄下的未跟蹤文件及文件夾運行

git clean -df

執行 git reset HEAD 以取消之前 git add 添加

git命令用法還是有很多,需要不斷總結

總結

以上是生活随笔為你收集整理的git常用使用命令个人总结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。