fix: Add comments
diff --git a/erpnext/assets/doctype/asset/asset.py b/erpnext/assets/doctype/asset/asset.py
index 1cef290..9a8b6c9 100644
--- a/erpnext/assets/doctype/asset/asset.py
+++ b/erpnext/assets/doctype/asset/asset.py
@@ -179,7 +179,8 @@
 			
 			start = self.clear_depreciation_schedule()
 
-			if d.value_after_depreciation: 
+			# value_after_depreciation - current Asset value
+			if d.value_after_depreciation:
 				value_after_depreciation = (flt(d.value_after_depreciation) -
 					flt(self.opening_accumulated_depreciation)) - flt(d.expected_value_after_useful_life)
 			else:
@@ -291,6 +292,7 @@
 							"finance_book_id": d.idx
 						})
 
+	# used when depreciation schedule needs to be modified due to increase in asset life
 	def clear_depreciation_schedule(self):
 		start = 0
 		for n in range(len(self.schedules)):
@@ -300,10 +302,13 @@
 				break
 		return start
 
+
+	# if it returns True, depreciation_amount will not be equal for the first and last rows
 	def check_is_pro_rata(self, row):
 		has_pro_rata = False
-
 		days = date_diff(row.depreciation_start_date, self.available_for_use_date) + 1
+
+		# if frequency_of_depreciation is 12 months, total_days = 365
 		total_days = get_total_days(row.depreciation_start_date, row.frequency_of_depreciation)
 
 		if days < total_days:
@@ -783,9 +788,12 @@
 	depreciation_left = flt(row.total_number_of_depreciations) - flt(asset.number_of_depreciations_booked)
 
 	if row.depreciation_method in ("Straight Line", "Manual"):
+		# if the Depreciation Schedule is being prepared for the first time
 		if not asset.to_date:
 			depreciation_amount = (flt(row.value_after_depreciation) -
 				flt(row.expected_value_after_useful_life)) / depreciation_left
+
+		# if the Depreciation Schedule is being modified after Asset Repair
 		else:
 			depreciation_amount = (flt(row.value_after_depreciation) -
 				flt(row.expected_value_after_useful_life)) / (date_diff(asset.to_date, asset.available_for_use_date) / 365)
diff --git a/erpnext/assets/doctype/asset_repair/asset_repair.py b/erpnext/assets/doctype/asset_repair/asset_repair.py
index 3bcf958..fb815a2 100644
--- a/erpnext/assets/doctype/asset_repair/asset_repair.py
+++ b/erpnext/assets/doctype/asset_repair/asset_repair.py
@@ -46,7 +46,7 @@
 			self.decrease_stock_quantity()
 		if self.capitalize_repair_cost:
 			self.make_gl_entries()
-			if frappe.db.get_value('Asset', self.asset, 'calculate_depreciation'):
+			if frappe.db.get_value('Asset', self.asset, 'calculate_depreciation') and self.increase_in_asset_life:
 				self.modify_depreciation_schedule()
 
 	def check_repair_status(self):
@@ -156,27 +156,33 @@
 		return gl_entries
 
 	def modify_depreciation_schedule(self):
-		if self.increase_in_asset_life:
-			asset = frappe.get_doc('Asset', self.asset)
-			asset.flags.ignore_validate_update_after_submit = True
-			for row in asset.finance_books:
-				row.total_number_of_depreciations += self.increase_in_asset_life/row.frequency_of_depreciation
+		asset = frappe.get_doc('Asset', self.asset)
+		asset.flags.ignore_validate_update_after_submit = True
+		for row in asset.finance_books:
+			row.total_number_of_depreciations += self.increase_in_asset_life/row.frequency_of_depreciation
 
-				asset.edit_dates = ""
-				extra_months = self.increase_in_asset_life % row.frequency_of_depreciation
-				if extra_months != 0:
-					self.calculate_last_schedule_date(asset, row, extra_months)
+			asset.edit_dates = ""
+			extra_months = self.increase_in_asset_life % row.frequency_of_depreciation
+			if extra_months != 0:
+				self.calculate_last_schedule_date(asset, row, extra_months)
 
-			asset.prepare_depreciation_data()
-			asset.save()
+		asset.prepare_depreciation_data()
+		asset.save()
 
 	# to help modify depreciation schedule when increase_in_asset_life is not a multiple of frequency_of_depreciation
 	def calculate_last_schedule_date(self, asset, row, extra_months):
 		asset.edit_dates = "Don't Edit"
 		number_of_pending_depreciations = cint(row.total_number_of_depreciations) - \
 			cint(asset.number_of_depreciations_booked)
+
+		# the Schedule Date in the final row of the old Depreciation Schedule
 		last_schedule_date = asset.schedules[len(asset.schedules)-1].schedule_date
+
+		# the Schedule Date in the final row of the new Depreciation Schedule
 		asset.to_date = add_months(last_schedule_date, extra_months)
+
+		# the latest possible date at which the depreciation can occur, without increasing the Total Number of Depreciations
+		# if depreciations happen yearly and the Depreciation Posting Date is 01-01-2020, this could be 01-01-2021, 01-01-2022...
 		schedule_date = add_months(row.depreciation_start_date,
 			number_of_pending_depreciations * cint(row.frequency_of_depreciation))