久综合色-久综合网-玖草影视-玖草资源在线-亚洲黄色片子-亚洲黄色片在线观看

Hello! 歡迎來到小浪云!


【Linux】Linux開發必備六大工具之代碼、編譯、多人協作開發工具


一、代碼編輯工具vim

1、vim基本概念

vim編輯器主要有三種操作模式:命令模式、插入模式和底行模式。

  • 命令模式:在該模式下,所有的鍵盤輸入都被視為命令,用于控制光標移動、刪除字符、字或行等操作。按i鍵進入插入模式,按:鍵進入底行模式。
  • 插入模式:在此模式下,所有的鍵盤輸入都會被視為文本輸入。按esc鍵可以切換回命令模式。
  • 底行模式:用于文件的保存或退出、替換文本、查找字符串、顯示行號等操作。同樣,按esc鍵可以返回命令模式。

vim總共有12種模式,包括6種基本模式和6種附加模式。輸入help vim-modes可以查看所有模式。

【Linux】Linux開發必備六大工具之代碼、編譯、多人協作開發工具

2、vim操作

(1) 命令模式

進入vim時,默認處于命令模式。以下是一些常用命令:

命令 作用
gg 光標移動到文章開頭
G 光標移動到文章末尾
num+G 光標移動到第num行行首
$ 光標移動到當前行末尾
^ 光標移動到當前行開頭
w,b 光標按單詞移動,跨行
h,j,k,l 光標左移、下移、上移、右移
(num)yy 復制光標所在行或num行
(num)dd 剪切或刪除光標所在行或num行
(num)p 粘貼到光標所在行下方num次
u 撤銷上一步操作
ctrl+r 重做上一步撤銷的操作
~ 轉換光標所在字符的大小寫
(num)r 替換光標所在字符或之后的num個字符
R 進入替換模式,類似于第四種模式
(num)x 刪除光標所在字符或之后的num個字符

【Linux】Linux開發必備六大工具之代碼、編譯、多人協作開發工具

(2) 插入模式

進入插入模式后,可以直接編輯文本,輸入的字符會顯示在文本中。

【Linux】Linux開發必備六大工具之代碼、編譯、多人協作開發工具

(3) 底行模式

以下是底行模式的常用命令:

命令 作用
set nu 顯示文件每一行的行號
(num) 直接跳轉到第num行
/+字符 向前查找字符,按n繼續查找
?+字符 向后查找字符,按n繼續查找
w 保存文件
q 退出文件
q! 強制退出文件
wq 保存并退出文件
wq! 強制保存并退出文件

【Linux】Linux開發必備六大工具之代碼、編譯、多人協作開發工具

3、vim配置

未經配置的vim不適合編寫代碼,因為它原本只是一個文本編輯器。配置vim可以優化編程環境。文本文件建議使用nano編輯,而代碼則使用vim。

vim的配置文件是隱藏文件.vimrc。

【Linux】Linux開發必備六大工具之代碼、編譯、多人協作開發工具

推薦使用一鍵配置vim,避免手動配置的麻煩。在Linux下輸入以下命令并輸入root密碼即可完成配置,配置完成后重啟shell。

二、編譯工具–gcc/g++編譯器

1、程序翻譯過程

C程序的翻譯過程包括預處理、編譯、匯編和鏈接四個階段。

  • 預處理:進行宏替換,生成.i文件。
  • 編譯:檢查代碼規范性和語法錯誤,生成.s文件。
  • 匯編:生成機器可識別的代碼,生成.o文件。
  • 鏈接:鏈接庫文件生成可執行程序。

【Linux】Linux開發必備六大工具之代碼、編譯、多人協作開發工具

從圖片中可以看出,test.c經過預處理生成test.i,文件大小增加很多,這是因為宏替換和頭文件包含。編譯后文件變小,匯編生成二進制編碼后文件變大,最后鏈接庫生成可執行文件。

庫分為動態庫和靜態庫。靜態庫在鏈接時將庫中的目標文件與程序自身的目標文件組合,生成獨立的可執行文件,但文件較大。動態庫則在程序運行時動態鏈接,文件較小,但依賴外部庫文件。

靜態鏈接時使用-Static選項。

【Linux】Linux開發必備六大工具之代碼、編譯、多人協作開發工具

可以看出靜態鏈接的文件比動態鏈接的大100倍。默認的動態鏈接實際上是混合鏈接,既有動態部分也有靜態部分。

2、動態和靜態庫注意事項

  • 沒有靜態庫無法進行靜態鏈接。
  • 沒有動態庫但有靜態庫時,默認動態鏈接指令仍然可以鏈接靜態庫。
  • 默認的gcc test.c -o test指令是混合鏈接,加上-static選項則全部靜態鏈接。

3、gcc使用

選項1 作用
-E 只進行預處理
-S 編譯到匯編語言,不進行匯編和鏈接
-c 編譯到目標代碼
選項2 作用
-o 指定輸出文件

三、多人協作開發工具git

1、簡介

git是一個開源的分布式版本控制系統,用于管理軟件開發過程中的代碼版本。git允許開發人員在本地克隆代碼倉庫,進行開發、提交、推送等操作,并與遠程倉庫同步。每個開發者都擁有完整的代碼倉庫副本,包括所有版本歷史和元數據,使開發過程更加獨立和靈活。

與集中式版本控制系統不同,git沒有單一的中心服務器,每個開發者的本地機器上都有一個完整的版本庫。開發者可以在本地進行完整的開發流程,包括提交、暫存等操作,而無需依賴網絡連接到中心服務器。

git使用“快照”方式存儲版本信息,每次提交時為整個項目創建一個快照,記錄所有文件的狀態。git采用高效的壓縮算法數據結構存儲這些快照,減少存儲空間占用,并能快速進行版本切換和合并。

git的分支創建和切換非常輕量級,開發者可以輕松創建多個分支,用于不同開發任務,如功能開發、修復bug等。各個分支之間相互獨立,開發人員可以在不同分支上并行開發,然后根據需要將分支合并到主分支或其他分支上。

主要用于團隊協作開發、代碼備份與恢復、開源項目管理。

2、git使用

大家對Github和gitee并不陌生,前者是全球最大的開源代碼托管平臺,后者是面向國內開發者的代碼托管平臺。可以從中下載許多開源項目和學習資料,也可以開源項目供其他人查看。由于github訪問不穩定,需要借助“技術”才能使用,這里展示Gitee的使用。

【Linux】Linux開發必備六大工具之代碼、編譯、多人協作開發工具【Linux】Linux開發必備六大工具之代碼、編譯、多人協作開發工具

創建新倉庫時,下方的三個選項可以選擇或不選擇。如果倉庫是單一文件倉庫,建議勾選.gitignore,它會將指定后綴名的文件在推送時默認不推送。

【Linux】Linux開發必備六大工具之代碼、編譯、多人協作開發工具

readme文件是開源項目的說明書,必不可少。

通過git clone + 遠端倉庫鏈接將遠程倉庫克隆到本地。

【Linux】Linux開發必備六大工具之代碼、編譯、多人協作開發工具【Linux】Linux開發必備六大工具之代碼、編譯、多人協作開發工具

創建并編輯文件后,將文件添加到暫存區,然后提交到本地倉庫,最后推送到遠程倉庫,并在備注中說明文件內容。

【Linux】Linux開發必備六大工具之代碼、編譯、多人協作開發工具

今日分享到此結束。

相關閱讀

主站蜘蛛池模板: 欧美一级片网站 | 日韩欧美精品综合一区二区三区 | 久久久久毛片成人精品 | 夜夜操影院 | 影院成人区精品一区二区婷婷丽春院影视 | 久久免费特黄毛片 | 美国三级毛片 | 日本免费a级片 | 性盈盈影院影院 | 在线观看欧洲成人免费视频 | 亚洲国产成人久久综合碰 | 毛片大全在线 | 女人成午夜大片7777在线 | 国内精品久久久久久久aa护士 | 日本高清aⅴ毛片免费 | 欧美性f| 久久91亚洲精品中文字幕 | 九九在线观看视频 | 九九99香蕉在线视频网站 | 日本三级香港三级人妇r | 亚洲一区区| 欧美人在线 | 久9久9精品视频在线观看 | 绝对真实偷拍盗摄高清在线视频 | 久久免费精品国产72精品剧情 | 成年片免费网址网站 | 亚洲欧美日韩一级特黄在线 | japanesevideo乱子 japanese日本tube色系 | 久久视频国产 | 国产精品久久久久免费a∨ 国产精品久久久久免费视频 | 黄色三级网络 | 午夜在线影院 | 日韩经典欧美精品一区 | 中国三级毛片 | 亚洲免费视频一区二区三区 | 免费人成黄页网站在线观看 | 韩国毛片 免费 | 日本色中色 | 久草视频播放 | 99精品视频在线在线视频观看 | av18在线播放 |