哈工大軟體構造(前置篇)

来源:https://www.cnblogs.com/kalesky/archive/2022/05/13/16267792.html
-Advertisement-
Play Games

鑒於本屆諸多同學在一開始接觸到軟體構造課程時出現了對於Github的使用以及對於文件目錄的設置等諸多問題,本人雖然很菜,但是願意寫本篇博客以記錄一些前置內容的操作方法,如有謬誤,敬請指正!謝謝! ...


鑒於本屆諸多同學在一開始接觸到軟體構造課程時出現了對於Github的使用以及對於文件目錄的設置等諸多問題,本人雖然很菜,但是願意寫本篇博客以記錄一些前置內容的操作方法,如有謬誤,敬請指正!謝謝!

目錄

 

一、Github的使用

1、Github賬戶建立

2、Git的下載與使用 

 二、文件目錄

三、lib庫的導出

本人博客園博客(同步CSDN)

何以牽塵 - 博客園 (cnblogs.com)https://www.cnblogs.com/kalesky/

 

一、Github的使用

1、Github賬戶建立

這一點其實沒有太多好說的,唯一的卡點可能是國內網路有時登錄Github網站登不進去,這(可能,我猜)是由於我國網路對Github半封禁所致(畢竟上面有很多反動言論,建議不信謠不傳謠,堅定我黨的理想信念,發揮先鋒模範作用),因此可能需要魔法上網的操作(如果不會魔法上網,可以等啥時候不卡了再上,鑒於法律法規不可以透露並傳播如何使用魔法,同學們也需謹記)

關於Github的註冊,這一點我相信絕大部分哈工大計算學部的優秀學子不需要我教學,掛一下CSDN上已有的詳細教程(肯定比我寫的詳細):

(3條消息) 創建我的GitHub賬號及使用_xingkaifan的博客-CSDN博客_創建github賬號https://blog.csdn.net/xingkaifan/article/details/81105352

在這之後呢,咱建議先跟著Github上的官方教程步驟一步步創建一個倉庫,添加一些文件,使用一下分支管理,對後續實驗的操作也有很大的幫助,能夠更好地瞭解Github在多人協同工作方面的優勢。

不要嫌麻煩!!!不要嫌麻煩!!!不要嫌麻煩!!!教程做下來一遍大概二十多分鐘,耽誤不了你找女朋友玩兒!(有人沒有女朋友,我不說是誰doge) 

之後大部分同學第一次接觸應該是沒有配置過SSH的,建議配置一下,對於後續倉庫的連接、克隆都非常有用。什麼?你問我什麼是SSH?請看這個截圖:

左側就是大伙兒常用的https的方法了,右側呢就是推薦配置的SSH的方法,下麵放上網上大佬的保姆級教程,教程里也有寫SSH的優點好處,我就不贅述了,在這兒我就當個給大佬們引流的工具人吧哈哈哈哈(bushi)

(3條消息) github配置ssh(圖文教程)_追夢2222的博客-CSDN博客_github sshhttps://blog.csdn.net/qq_37294163/article/details/103099424

整完了?繼續往下看吧,還有很多呢~

 

2、Git的下載與使用 

這個呢,我Git當時很早就下了,不在這個學期,所以具體咋裝的我也記不太清了,直接上教程:

Git下載、安裝與環境配置_糖葫蘆的小黑屋的博客-CSDN博客_git安裝配置一、git下載與安裝百度git官網,下載鏈接,根據自己電腦系統下載相應的安裝包,下載最新版本,點擊紅框或籃筐處即可點擊下載好的安裝包安裝這個軟體一直點擊next,直到出現install,點擊install,安裝完成後點擊finish:安裝好後在桌面界面點擊滑鼠右鍵,會出現如下界面檢查git是否安裝OK鍵盤Ctrl+r,然後在彈出框中出入cdm,彈出如下界...https://blog.csdn.net/huangqqdy/article/details/83032408

這裡挺全的,照著做就行了,感覺國內網下的比較慢就掛個梯子試試,我記得用外網好像比內網更慢(doge),反正八仙過海各有神通吧。上面這個教程後面也有SSH的配置,lazy boy們,上面SSH沒做的這裡也要做一下喂~

安裝完Git過後就得考慮創建個本地倉庫來clone/pull/push學校給你的遠程倉庫的東西了,這裡我也有個保姆級教程,註意!!!(都看過來!!!非常重要!!!免得你們等會兒出bug怪我!!!為了避免你們使用我下麵的教程出錯,建議你們拿到學校發的倉庫後先登進去,在Settings先改用戶名!!!改成HIT-LabX-學號的格式,你們老師發的lab0.pdf里應該也有,然後!!!最好先遠程創個文件比如說README這種,先給他初始化整一下,免得報錯,不做的話後面教程容易出問題,我室友就是這樣子)

添加README看截圖:

 

Git Bash的教程掛在下麵:(不推薦使用GUI,首先界面很嘖嘖,其次老師也會罵一頓GUI)

(3條消息) 軟體構造(零)git bash的使用方法(內附詳細代碼以及詳細圖片)_qq_28849009的博客-CSDN博客https://blog.csdn.net/qq_28849009/article/details/104486824

這裡我自己也寫一下吧(結合了自己的經歷跟教程,建議看我的(手動doge))

1、在本地先創建個文件夾作為本地倉庫,我自己是另外創的,沒用Eclipse或者IDEA的項目文件夾,每次提交就把項目文件夾里的東西複製一下到這個本地倉庫的文件夾里,也很好用,免得出什麼糟心問題。在這個文件夾里右鍵,Git Bash here,看不懂的看截圖(smile.jpg)

 免得各位有傻小子按照教程手打cd路徑(沒錯我就是那個傻小子,尤其是我路徑還很長,寄!)

2、初始化倉庫       

git init

3、跟遠程倉庫鏈接起來       

git remote add origin(空格)倉庫Url

Url就是你的倉庫網址(通俗來說), 哦對了,在Bash裡面不要直接Ctrl+C Or Ctrl+V,不知道為啥自己試一下就好(doge),使用右鍵Copy是複製的意思,Paste是粘貼的意思(防止英語不好的小叮噹看不懂),這裡的Url建議複製SSH地址,不懂的看截圖:

 點小方塊里的就複製下來SSH地址了,然後在Bash里那個位置Paste上去就行了。

4、寫用戶名用戶郵箱

我不確定要不要做(因為我菜),以防萬一就按照教程里搞一下

git(空格)config(空格)--global(空格)user.name(這裡加個空格)"(這裡填Github用戶名)"

空格懂得都懂,郵箱這行你們懂要加就行我就不打了

git config --global user.email "(這裡填註冊Github的郵箱)"

完事兒後他可能沒有按照教程里彈,有的人彈有的人沒彈,我就沒彈,不管他,繼續往下做

5、下麵這一步可做可不做,如果uu們按照我上面說的在倉庫里新加了個README初始化,就要做,不然會碰到糟心的事兒

git pull --rebase origin master

這一步是強制合併遠程倉庫到本地倉庫,就是把你加的文件整下來,免得之後push發現本地倉庫跟遠程不一樣然後嗡嗡叫不給你過。

6、初始化到這裡已經結束了,下麵是你寫完項目提交的事情

git add . 

這裡add後面空格後面加個點別忘了,表示把當前倉庫所有文件全部上傳。

7、提交修改日誌,得寫,別懶

git commit -m "(這裡寫你此次提交的備註)" 

8、上傳文件

git push -u origin master 

這一步過後可能會跳認證你身份的彈窗(如果你之前沒跳的話),認證就行

9、這裡你已經熟悉了上傳的操作,但是萬一你上傳錯了文件咋刪遠程倉庫的呢?看下麵

(不好意思我懶得打了,教程里有,這一步跟著教程就好,沒有太多坑,哈哈哈哈)

算了我還是打一下命令吧

git rm --cached -r "(這裡填你要刪的文件名)"

10、雜項

很多問題都是本地倉庫跟遠程倉庫不同步的原因造成的,這裡作為初學者咱也就只會強制同步,忘了的同學看下麵

git pull --rebase origin master 

還有問題沒解決?看我下麵附上的鏈接,如果還幫助不了你,自己整去!誰知道你咋整的這麼多問題,我講的已經夠全面了!

Git Bash提交文件到github_weixin_51638046的博客-CSDN博客0.下載git bash1.到所要提交的文件的位置此時應該顯示為(帶(master))如果沒有(master)則需信任git目錄2.初始化本地git倉庫git init;3.將github倉庫url添加git remote add origin https://github.com/......4.認證身份git config --global user.name “ ”git config --global user.email “...https://blog.csdn.net/weixin_51638046/article/details/124557186?spm=1001.2014.3001.5501

(上面這個是我室友寫的博客,你們可以看看,如果步驟跟我不一樣出了問題可以看他的)

(3條消息) Git 提示fatal: remote origin already exists 錯誤解決辦法_Ricky_Fung的博客-CSDN博客https://blog.csdn.net/top_code/article/details/50381432

(3條消息) error: failed to push some refs to如何解決_塵客-追夢的博客-CSDN博客https://blog.csdn.net/qq_45893999/article/details/106273214

(3條消息) git常見使用_流星雨線上的博客-CSDN博客https://blog.csdn.net/liuxingyuzaixian/article/details/123934095

 二、文件目錄

做到這裡的同學們,肯定有部分是沒懂報告上面要求的目錄對吧,沒事兒,我當時也沒懂,我用的是IDEA,至於Eclipse的同學可以借鑒一下吧,應該也差不多(還是要吹一波IDEA,比起Eclipse太智能了)

先給你們看下我Lab1的目錄:

 src下的P1、P2、P3我都設置成package,什麼?你不會看?第一方法:問大佬同學

第二方法,看我這兒的設置:

 點開,比如說這裡的test文件夾(就那個截圖裡面綠色的文件夾)的設置

 差不多就這樣,要是連package都不會創建,不如以頭搶地(算了我覺得還是會有以頭搶地的uu,右鍵src,滑到new,選Package,要是創建Java類,就選Java class)

三、lib庫的導出

這裡呢我的方法不確定是不是正統方法,我自己摸索的,網上沒找到啥有用的,其他人都用的Eclipse,好了這裡Eclipse的同學可以走了,你們導的很方便,IDEA的同學留下來

 左邊這裡External Libraries,在lab1里其實這兩個庫就是我們要導的,咋導呢?往下看

 右鍵這個外部庫,依次點紅框框,左邊就彈出這個

點第一個,然後就彈出來下麵這個,Ctrl+C,Ctrl+V複製到你建的lib文件夾里,完事兒 

 

 

沒了,看到這裡的uu們,可以考慮點個收藏點個贊再走唄,覺得有用還可以安利給同學們喲~

下麵是我博客園的博客(同步CSDN)

何以牽塵 - 博客園 (cnblogs.com)https://www.cnblogs.com/kalesky/

覺得有用的話還可以點個關註喲~~~不定期發佈哈工大電腦相關內容


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 翻譯自 Tim Sneath 2022年5月12日的文章 《Introducing Flutter 3》 作者 : Tim Sneath 翻譯 : 沙漠盡頭的狼(谷歌翻譯加持) 鏈接 : Introducing Flutter 3(英文原文) 我們在手機、桌面和網站開發上進行多平臺UI開發的歷程達到 ...
  • 1.“new”有什麼不對勁? 在我們沒有接觸到工廠模式(簡單工廠、工廠方法模式、抽象工廠模式)之前,我們實例化對象唯一的方法就是通過“new”關鍵字來完成。但是,大量的使用“new”關鍵字來實例化對象會違背一些設計原則,因為代碼與具體的類型綁在一起,從而導致過多的依賴於細節而非抽象,這樣代碼就很難適 ...
  • 到目前為止,我們知道Spring創建Bean對象有5中方法,分別是: 使用FactoryBean的getObject方法創建 使用BeanPostProcessor的子介面InstantiationAwareBeanPostProcessor的postProcessBeforeInstantiati ...
  • package com.exception.demo01;public class demo01 { public static void main(String[] args) { try{new demo01().a();}//StackOverflowError異常 catch (Throwa ...
  • 介紹:本文用的經典的前後端分離開源項目ruoyi Gitee鏈接地址:https://gitee.com/y_project/RuoYi 一、拉取項目: 利用Git把項目拉取到本地,也可以直接利用idea工具拉取,如圖點擊Get from VCS 填入遠程倉庫地址url,點擊clonde 等待一段時 ...
  • 博客推行版本更新,成果積累制度,已經寫過的博客還會再次更新,不斷地琢磨,高質量高數量都是要追求的,工匠精神是學習必不可少的精神。因此,大家有何建議歡迎在評論區踴躍發言,你們的支持是我最大的動力,你們敢投,我就敢肝 ...
  • 本文緊接上文的AQS源碼,如果對於ReentrantLock沒有基礎可以先閱讀我的上一篇文章學習ReentrantLock的源碼 ReentrantLock鎖重入原理 重入加鎖其實就是將AQS的state進行加一操作 然後釋放鎖資源將AQS的state進行減一操作 當state為0時才會徹底的釋放鎖 ...
  • 目錄 一.簡介 二.效果演示 三.源碼下載 四.猜你喜歡 零基礎 OpenGL (ES) 學習路線推薦 : OpenGL (ES) 學習目錄 >> OpenGL ES 基礎 零基礎 OpenGL (ES) 學習路線推薦 : OpenGL (ES) 學習目錄 >> OpenGL ES 轉場 零基礎 O ...
一周排行
    -Advertisement-
    Play Games
  • PasteSpider是什麼? 一款使用.net編寫的開源的Linux容器部署助手,支持一鍵發佈,平滑升級,自動伸縮, Key-Value配置,項目網關,環境隔離,運行報表,差量升級,私有倉庫,集群部署,版本管理等! 30分鐘上手,讓開發也可以很容易的學會在linux上部署你得項目! [從需求角度介 ...
  • SQLSugar是什麼 **1. 輕量級ORM框架,專為.NET CORE開發人員設計,它提供了簡單、高效的方式來處理資料庫操作,使開發人員能夠更輕鬆地與資料庫進行交互 2. 簡化資料庫操作和數據訪問,允許開發人員在C#代碼中直接操作資料庫,而不需要編寫複雜的SQL語句 3. 支持多種資料庫,包括但 ...
  • 在C#中,經常會有一些耗時較長的CPU密集型運算,因為如果直接在UI線程執行這樣的運算就會出現UI不響應的問題。解決這類問題的主要途徑是使用多線程,啟動一個後臺線程,把運算操作放在這個後臺線程中完成。但是原生介面的線程操作有一些難度,如果要更進一步的去完成線程間的通訊就會難上加難。 因此,.NET類 ...
  • 一:背景 1. 講故事 前些天有位朋友在微信上丟了一個崩潰的dump給我,讓我幫忙看下為什麼出現了崩潰,在 Windows 的事件查看器上顯示的是經典的 訪問違例 ,即 c0000005 錯誤碼,不管怎麼說有dump就可以上windbg開幹了。 二:WinDbg 分析 1. 程式為誰崩潰了 在 Wi ...
  • CSharpe中的IO+NPOI+序列化 文件文件夾操作 學習一下常見的文件、文件夾的操作。 什麼是IO流? I:就是input O:就是output,故稱:輸入輸出流 將數據讀入記憶體或者記憶體輸出的過程。 常見的IO流操作,一般說的是[記憶體]與[磁碟]之間的輸入輸出。 作用 持久化數據,保證數據不再 ...
  • C#.NET與JAVA互通之MD5哈希V2024 配套視頻: 要點: 1.計算MD5時,SDK自帶的計算哈希(ComputeHash)方法,輸入輸出參數都是byte數組。就涉及到字元串轉byte數組轉換時,編碼選擇的問題。 2.輸入參數,字元串轉byte數組時,編碼雙方要統一,一般為:UTF-8。 ...
  • CodeWF.EventBus,一款靈活的事件匯流排庫,實現模塊間解耦通信。支持多種.NET項目類型,如WPF、WinForms、ASP.NET Core等。採用簡潔設計,輕鬆實現事件的發佈與訂閱。通過有序的消息處理,確保事件得到妥善處理。簡化您的代碼,提升系統可維護性。 ...
  • 一、基本的.NET框架概念 .NET框架是一個由微軟開發的軟體開發平臺,它提供了一個運行時環境(CLR - Common Language Runtime)和一套豐富的類庫(FCL - Framework Class Library)。CLR負責管理代碼的執行,而FCL則提供了大量預先編寫好的代碼, ...
  • 本章將和大家分享在ASP.NET Core中如何使用高級客戶端NEST來操作我們的Elasticsearch。 NEST是一個高級別的Elasticsearch .NET客戶端,它仍然非常接近原始Elasticsearch API的映射。所有的請求和響應都是通過類型來暴露的,這使得它非常適合快速上手 ...
  • 參考delphi的代碼更改為C# Delphi 檢測密碼強度 規則(仿 google) 仿 google 評分規則 一、密碼長度: 5 分: 小於等於 4 個字元 10 分: 5 到 7 字元 25 分: 大於等於 8 個字元 二、字母: 0 分: 沒有字母 10 分: 全都是小(大)寫字母 20 ...